in reply to Re^3: mod_perl how to process static content
in thread mod_perl how to process static content

Nifty, but you still start a mod_perl process and to make matters worse you make two separate filechecks (which are slow by itself) for each and every hit to your pages. At least you should use the special _filehandle for the second check to save yourself a system call.

In Practical mod_perl we find the following (when speaking about a set-up with one mod_perl server):

While you will be happy to have these monster processes serving your scripts with monster speed, you should be very worried about having them serve static objects such as images and HTML files. Each static request served by a mod_perl-enabled server means another large process running, competing for system resources such as memory and CPU cycles. The real overhead depends on the static object request rate. Remember that if your mod_perl code produces HTML code that includes images, each of these will produce another static object request.
If you cannot have separate servers for static and dynamic content, at least let the static content be served by a non mod_perl handler (i.e. Apache's default handler).

CountZero

A program should be light and agile, its subroutines connected like a string of pearls. The spirit and intent of the program should be retained throughout. There should be neither too little or too much, neither needless loops nor useless variables, neither lack of structure nor overwhelming rigidity." - The Tao of Programming, 4.1 - Geoffrey James