There are a lot of components that make up modern internet websites, and a lot of places to get stuck in the mud. Website performance starts with the browser, what caching it is doing, their bandwidth to your server, what the webserver is doing (caching or not and how), if the webserver has sufficient memory, and then what the application code is doing and lastly how it is interacting with the backend database.
With all this complexity, it's no wonder so many sites struggle. Typically these types of analysis start with some load testing, to stress test your setup, so you can watch for leaks. Then some tools are applied to the webserver tier, and the database tier to see where the bottleneck lies. It may be in the network …[Read more]