A simple explanation of load balancing

Michael PhillipsOne of the cool things about Everleap is the ability to run your site from multiple servers and have those servers automatically load balanced. A lot of complicated things take place on the router to achieve load balancing, but in simple terms load balancing is just the equal distribution of the incoming requests across whatever number of servers the site is running on.

simpleloadbalance

For example, if your site is running on two servers (something that’s available for every site on Everleap), and 100 requests come in for the site, 50 requests will go to each of the two servers. That way the incoming load is balanced between the available servers.

Different load balancers make different calculations in order to route traffic. Our load balancers will always tend to “stick” to a session, meaning they will try to send a visitor back to the same server that they first connected to during a given visit. That’s naturally the preferable way to handle a visitor for most sites, especially if that visitor is passing input data to the site.

Load balancing speeds up the average request, since you have multiple servers available. If you take those 100 requests and spread them across four servers, each server is dealing with a lighter load than if there were only two servers available (25 requests on average, as opposed to 50). Which is why really big sites that deal with millions of requests can still load quickly. It’s because they are load balanced across dozens (or hundreds) of servers.

Do you need load balancing? For the most part, only very busy sites benefit from load balancing. The average site can be served from a single server and still be fast and responsive. Where load balancing comes in handy though is for traffic spikes. If you’re doing an interview about your site, or it’s mentioned somewhere and a large number of visitors all descend on it at once, load balancing can mean the difference between smooth operation and slow loading or even timeouts.

So if you anticipate a spike in traffic you can be prepared, since load balancing between two servers can be turned on (or off) instantly in Control Panel. For larger sites that are consistently busy, or if you anticipate a really large traffic spike, we can add as many load balanced servers as you need.

The load balancers also work to prevent any overall web server downtime by detecting problems or availability on a given server and routing traffic away from it. Which means if a server goes down for, say, a Windows update, traffic to the sites on that server is routed to another available server. We have a video that gives a very high level overview of how the Everleap system works.

If you think you may use load balancing at some point you should make sure your site is prepared to run across multiple servers. A simple static site can be load balanced without any adjustments. But even though our load balancers try to retain a visitor session, a more complex site, a site with a database-driven shopping cart or CMS for example, may require some adjustments to operate properly across multiple servers.

If you have any questions about load balancing or anything else at Everleap, drop us a line and we’ll answer them for you.


No responses yet

Leave a Reply