[Catalyst] Fastest Perl HTTPD?

Perrin Harkins perrin at elem.com
Sat Aug 26 21:14:44 CEST 2006


Len Jaffe wrote:
> Isn't that the whole point of this architecture.
> 
> The lightweight daemon that listens on port 80 either serves static 
> content,
> or asks the heavy app server process to do some work.
> 
> That way you have a whole bunch of light processes serving the static 
> stuff,
> and fewer heavy processes.  Once the heavy process is done, and hands it's
> output back to the light process, it is free to work for another light
> process, while the first light process deals with network transfer back to
> the client.

Actually you have one light process doing non-blocking I/O and serving 
all of the static stuff and a bunch of heavy processes doing all of the 
dynamic stuff.  That's what you already have when you use 
Lighttpd/apache with FastCGI or apache/squid as a reverse proxy to a 
separate mod_perl process.  The non-blocking I/O server may be faster 
for the static stuff than apache is, but apache is already so fast at 
static stuff that it won't matter much unless you're using an old 
under-powered machine.

In other words, you can't speed up any of the dynamic stuff using Matt's 
new non-blocking server unless you can figure out a way for it to deal 
with DBI (and any other blocking I/O) that is more efficient than just 
passing off requests to FastCGI/mod_perl processes.

- Perrin



More information about the Catalyst mailing list