Load Balancing
Definition.
Load Balancing: The process of distributing a set of tasks over a set of resources with the aim of making their overall processing more efficient.
In More Detail
A load balancer spreads requests across several instances, which buys both capacity and redundancy: one instance failing stops being an outage.
The complication is state. If a session lives in an instance's memory, the next request must reach that same instance, and you have quietly made every instance non-interchangeable. Keeping sessions in Redis or a database instead means any instance can serve any request, which is what makes horizontal scaling actually work.
In Practice
Most projects don't need this on day one — I design backends so it can be added later (stateless API servers, sessions in Redis rather than in-memory) without a rewrite, once traffic actually justifies it.
Related Terms
Browse the full software development glossary, or see the frequently asked questions.
If you are working out whether this applies to your own project, the case studies show where it turned up in real builds, services lists what I take on, and pricing gives the starting figures.
Let's Build Something Exceptional Together
Have a project in mind? I'd love to hear about it. I usually reply within 24 hours.
< 24 hrs
Avg. response time
30+
Projects shipped
98%
Client satisfaction