Client-side load balancing with Spring Cloud and Ribbon

Fortunately, the Spring Cloud ecosystem comes to the rescue and tries to address the issue when a server-side load balancer becomes a hot-point in a system. Instead of providing a workaround for the external load balancer, the Spring team decided to follow Netflix's best practices of building distributed systems. One of the ways of achieving scalability and location transparency is through client-side load balancing.

The idea of client-side load balancing is straightforward and means that a service communicates through a sophisticated client that is aware of the available instances of a target service so that it may balance the load among them easily:

Diagram 8.2. Example of the client-side ...

Get Hands-On Reactive Programming in Spring 5 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.