Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Scaling Microservices with Message Queues, Spring Boot and Kubernetes

Scaling Microservices with Message Queues, Spring Boot and Kubernetes

How do you design a service that can handle hundreds of thousands of requests?
And how do you deploy an application that scales dynamically?

In this talk, you'll learn how to design, package and deploy applications to Kubernetes. You'll understand the many configuration options available to configure your cluster and how best to tweak them to scale your application. You will learn how you can expose metrics from your app and autoscale it as you receive more traffic.

Daniele Polencic

August 29, 2019
Tweet

More Decks by Daniele Polencic

Other Decks in Technology

Transcript

  1. 10:00 pm 08:00 pm 06:00 pm 05:00 pm 03:00 pm

    01:00 pm 10k req/s 7k req/s 3k req/s
  2. 10:00 pm 08:00 pm 06:00 pm 05:00 pm 03:00 pm

    01:00 pm 10k req/s 7k req/s 3k req/s NOW
  3. 10:00 pm 08:00 pm 06:00 pm 05:00 pm 03:00 pm

    01:00 pm 10k req/s 7k req/s 3k req/s NOW
  4. the retailer reportedly didn't have enough servers to handle the

    traffic surge for the day — fortune.com
  5. amazon had to manually add servers to address the issue

    (and failed to add them fast enough) — fortune.com
  6. LOAD BALANCER LOAD BALANCER User BACKEND BACKEND BACKEND BACKEND BACKEND

    BACKEND BACKEND BACKEND BACKEND BACKEND BACKEND BACKEND RATIO 1:4
  7. LOAD BALANCER LOAD BALANCER User RATIO 1:2 BACKEND BACKEND BACKEND

    BACKEND BACKEND BACKEND BACKEND BACKEND BACKEND BACKEND BACKEND BACKEND
  8. FRONTEND Pod 1 FRONTEND Pod 2 Front-end service BACKEND Pod

    3 Backend service ACTIVEMQ Pod 4 Incoming traffic Queue service Autoscaling Group
  9. FRONTEND Pod 1 FRONTEND Pod 2 Front-end service Horizontal Pod

    Autoscaling BACKEND Pod 3 Backend service ACTIVEMQ Pod 4 Incoming traffic Queue service