Our company system is having slowness issue for the past week. After some debugging I was able to reproduce the problem by press and holding the F5 to let the page refresh numerous of time.
The page freeze and become unresponsive. I realize some request was stucked by looking at the server-status.
I did strace to the process and it shows the following message: "flock(16, LOCK_EX"
Here's the httpd.conf for prework.c andd keepalive was off:
<IfModule prefork.c> StartServers 4 MinSpareServers 5 MaxSpareServers 20 ServerLimit 256 MaxClients 256 MaxRequestsPerChild 4000 </IfModule>
Seems like the request was deadlocked and stucked there forever, could this be the cause of the system slowness? Is it caused by some kind of mis-configuration?
I also realize MySQL has process sleeping and doing nothing when the page is unresponsive. This will go away after 60 seconds which I believe is the time limit.
<IfModule prefork.c> StartServers 2 MinSpareServers 2 MaxSpareServers 10 ServerLimit 256 MaxClients 100 MaxRequestsPerChild 4000 </IfModule>