My site has gone from getting 20,000 visits/day, to 182,000 yesterday, due to being featured on a number of popular sites.
The site has become somewhat unresponsive. Many requests will lead to a timeout. Yet there is plenty of CPU & RAM available. CPU and RAM does has not really peaked above 20%, and is on average around 12%.
When trying to download the homepage with WGET, it will stall here:
Resolving domain.io (domain.io)... 22.214.171.124 Connecting to domain.io (domain.io)|126.96.36.199|:80... failed: Connection timed out. Retrying.
But if it does actually connect, it will download the page quickly. Additionally, I can connect to phpMyAdmin via the brower via IP and it works as normal.
This leads me to believe there is an issue in Apache
Timeout 300 KeepAlive On MaxKeepAliveRequests 100 KeepAliveTimeout 5 <IfModule mpm_prefork_module> StartServers 5 MinSpareServers 5 MaxSpareServers 10 MaxClients 150 MaxRequestsPerChild 0 <IfModule mpm_worker_module> StartServers 2 MinSpareThreads 25 MaxSpareThreads 75 ThreadLimit 64 ThreadsPerChild 25 MaxClients 150 MaxRequestsPerChild 0 <IfModule mpm_event_module> StartServers 2 MinSpareThreads 25 MaxSpareThreads 75 ThreadLimit 64 ThreadsPerChild 25 MaxClients 150 MaxRequestsPerChild 0
Not which sure of these I am using, will check now.
Does anyone have any suggestions as to what to tinker with here? In Apache or otherwise.
When I login via SSH it says:
System load: 2.92 Processes: 289 Users logged in: 0 Memory usage: 9% Swap usage: 0%
The server is a 4 core 3.2Ghz with 32GB RAM and 2x2TB, little of which is used.