Apache::SizeLimit is actually a better approach than MaxRequestsPerChild, since it only makes the process exit if it has actually been growing. There's no reason for a process to exit after 100 requests if it hasn't grown significantly, just as a process that served 5 requests and grew a lot (maybe it slurped a big file or downloaded something big with LWP...) should exit.