BP Nector Server Load Balancing (2005)

Server Load Balance Graph
Server Load Balance Graph

As part of a viral marketing campaign, BP Nector sent out e-mails to approximately 800,000 customers that contained links to a microsite that contained a 4MB flash movie.

10% of all recipients were expected to click through to the microsite, a level of traffic that could not be handled by a single web server. As the movie was designed to be forwarded to new recipients, further load was put on the server.

A five-server configuration was designed that consisted of:

  • Gateway server
  • 3 x Media Servers
  • Database server

All servers were running Linux and were hosted in a data centre with an extremely high speed connection.

When a user clicked the link within the e-mail they were taken to the gateway server that redirected them to one of the three media servers, chosen at random. At the same time their connection was logged to a database for the sole purpose of monitoring the load on the servers. The central database served to provide the customers name that was used in the flash movie.

After an initial test run using a small number of recipients, all 800,000 e-mails were sent out within a window of a few hours.

Even under the extreme load of 700+ simultaneous connections the servers remained fast and responsive.

The logging and monitoring system was coded in PHP using a MySQL database. Using the GD library, graphs of the current server activity were generated to show the loads on each of the three media servers.