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?
ADD ON:
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.
UPDATE http.conf:
<IfModule prefork.c>
StartServers 2
MinSpareServers 2
MaxSpareServers 10
ServerLimit 256
MaxClients 100
MaxRequestsPerChild 4000
</IfModule>