Scaling modern event-driven applications that use an event-loop, such as those written using Node.js or Vert.x shouldn't be based on a single metric such as CPU usage. Code that uses blocking APIs or performs CPU-bound operations can have a significant impact on application responsiveness. Using Worker Threads can help alleviate pressure on the event-loop, but scaling out more replicas also plays an important role.
Join this session for a practical introduction to Kubernetes autoscaling, and KEDA. We'll examine an application that suffers reduced throughput and increased latency due to CPU-bound tasks blocking the event-loop. We'll then explore how Worker Threads and autoscaling features provided by Kubernetes and KEDA can keep our application both highly-available and responsive.