Load balancing is the art of distributing incoming network traffic across multiple servers. This ensures that no single server is overwhelmed and provides high availability. If one server dies, the load balancer simply shifts the traffic to the survivors.
In Kubernetes, the **Ingress Controller** (often powered by Nginx) is the entry point for all web traffic. It handles SSL termination (HTTPS) and uses rules to route toolliyo.com/api/users to the Identity service and toolliyo.com/api/catalog to the Catalog service.
Q: "What is 'Sticky Sessions' (Session Affinity) and why should we avoid it in Microservices?"
Architect Answer: "Sticky Sessions ensure that a specific user always hits the same server instance. This is a hack used to support legacy stateful applications. In Microservices, we avoid it because it breaks **Scalability**. If one server gets stuck with 1,000 'Heavy' users, we can't easily move them to a quieter server. We prefer **Stateless Services** where ANY instance can handle ANY user, because the state is stored in a shared place like Redis."