in reply to CgiProxy And Heavy Visitors

Try preloading your needed modules in your startup.pl (using mod_perl). These loaded modules are shared now for all apache processes.
You should use Apache2 prefork MPM however, as i found out here: (shared) memory and preloading modules using Mod-perl, and don't have to be reloaded.
Next you can change the apache config, and set the MaxRequestsPerChild to a lower number, so if there are little leaks in a script (i hope not ;-)) the child process is stopped, and memory is cleaned.
next, indeed mod_perl uses more memory, it keeps compiled code in memory, that's what makes it fast.

"We all agree on the necessity of compromise. We just can't agree on when it's necessary to compromise." - Larry Wall.