Hi. We are using Apache::DBI to connect mod_perl to mysql.
 
Suddenly (at about 21:00 GMT every day) the number of mysql processes spirals into chaos. From a stable 8 to 20 processes, it jumps up to 70 processes. This uses up all our 510MB RAM, swap-space gets used, and the system grinds to a complete halt. Sometimes, if all load it taken off (users stop their access), it sorts itself out, and mysql processes return to normal. Other times server load hits 50 and I have to restart mysql. This kills all its processes and the system continues happily.
 
1) We have no idea why this happens at that particular time. There are no crons that run then, and we think have a finite ammount of users accessing the system who do not do anything different at the time the spike happens. The site is public though, so perhaps spiders could be doing this? Any suggestions?
 
2) Does Apache create a new mysql connection/process for EVERY child apache process that is spawned? I assume some apache processes are spawned to handle simple non-database actions such as retrieving a graphic or static html file. Because we're using Apache::DBI, does this mean that even these little processes are creating a big mysql process?
 
This is bringing us to our knees. Any help or comments, no matter how obscure, would be greatly appriciated!
 
Thanks everyone,
 
John Cameron

Reply via email to