Choosing a Web Architecture for Perl Perrin Harkins We Also Walk Dogs
This used to be an easy decision Netscape, or Apache for you hippies
CGI, or NSAPI if you enjoy core dumps
Server-side development matured, and it stayed easy Apache became the standard web server
mod_perl became the way to run Perl
FastCGI was looking peaky Outside of Amazon's reality distortion field anyway
Then two things happened Ruby came along Renewed interest in FastCGI
Thanks, Ruby! Non-blocking I/O became fashionable Memcached
Lighttpd
Nginx
Now we have many choices Web servers Apache
Lighttpd
Nginx
Squid
Perlbal
Varnish Protocols FastCGI
HTTP
SCGI
FastCGI Many implementations for different servers
Daemons are managed by the web server or an external process
Has hooks for auth, logging, and filtering, but not always implemented and rarely used
HTTP Reverse proxy forwards HTTP requests to apache/mod_perl backend
SCGI ”Simple CGI”

Choosing a Web Architecture for Perl