commitment  


   

  MySQL Perforance Tuning for LAMP Website


Goal

To improve the performance of the MySQL back-end to a live LAMP (Linux Apache MySQL PHP) website.


Background

Our client had separate images and text which were parsed and served on the fly as HTML pages. They had a drive to expand the reach of their website but had no funds to buy new hardware or extra data centre space to host it in. Limitations:

  • their hardware used the older 32bit CPUs
  • the website was live and serving 10's of thousands of people per month
  • the website was load-balanced between data centres in the UK and the USA
We had 2 weeks and only 8 hours per day window to carry out all our work.


Execution

The upgrade path would necessarily require taking turns to upgrade each site. We had to undertake some capacity planning and test that a single hosting site could undertake the extra load during upgrade at the other data centre.

We researched a number of performance enhancing options and a battery of tests was subsequently compiled. Also, an improved open source tool deployed in place of the clients tool for creating and monitoring simulated loads. As is proper and fits with best practices with testing only one change could be made at a time and tested. The same tool was also extended to 'spider' through the website and generate more realistic random loads of random pages.

Despite the very tight time-schedule and strict working windows during the day the project was successfully delivered on time with the required performance enhancements and capacity tests performed.

 
© Copyright EigenForge 2012 Legal