in reply to Re^2: CgiProxy And Heavy Visitors
in thread CgiProxy And Heavy Visitors
I would still go with my previous recommend as an obvious first step. After you do that you should be able to drop the number of mod_perl Apache kids substantially and maintain throughput. It would also be good longer term to audit the code looking for where memory is likely to be allocated and not freed at the end of each request. Devel::Leak may help you do that.
I'm not entirely sure of what you mean by "automatically restart of apache every 10 minutes". If you mean that Apache has to stop and launch again, that suggests that your machine is getting out of memory and random processes are being killed. This is very bad. If you mean that Apache children are dying that frequently, that is fairly harmless. Think of it this way, if your average Apache child lasts 10 minutes and you have 20 of them, then you have one child being launched every 30 seconds. Compare with 45 being launched per second and you see improvement. The time to be able to launch processes is not going to be an issue until they die a lot faster than that!
Incidentally once you are on mod_perl, writing real mod_perl handlers rather than using Apache::Registry should both considerably boost performance and save memory. (I don't know that you're using that, but it is a pretty safe guess.)
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^4: CgiProxy And Heavy Visitors
by artin (Initiate) on Apr 13, 2005 at 10:02 UTC | |
by tilly (Archbishop) on Apr 14, 2005 at 02:21 UTC | |
|
Re^4: CgiProxy And Heavy Visitors
by artin (Initiate) on Apr 14, 2005 at 09:11 UTC |