perl-modperl mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Randolf Richardson" <>
Subject Re: How do you use mod_perl for your web application?
Date Fri, 17 Jun 2011 23:28:43 GMT
> I'm interested in hearing about what application frameworks (Catalyst,
> CGI::App, Mojolicious) are used here with mod_perl.  Given the number
> of emerging Perl based webservers on CPAN (in addition to Nginx,
> lighty, etc), it seems like there are many more Perl web application
> and webservers out there now than there were five years ago.

	I'm using mod_perl2 for custom internet site development.  Where 
many people might use static HTML pages, or other programming 
languages such as JSP (and others), I have a .pl (Perl source code) 
file in its place (e.g., "" instead of "index.html").

	On one of my web sites, I documented the steps that I use to 
configure mod_perl2 for this (working sample source code included):

		How to install and configure ModPerl 2

	I am hosting hundreds of web sites that I developed with mod_perl2, 
and although most of them are small (and static pages could have 
worked just fine too), there are a few that have PostgreSQL database 
backends (membership management, PayPal integration, full transaction 
history browsing, private forums, etc.).

	I did use DBIx::Class for a while, but eventually moved back to 
straight DBI (and I just finished converting the last site a few days 
ago).  I think DBIx::Class is a wonderful system, but the problem I 
had with it is that new versions were behaving unexpectedly in ways 
that would cause my web sites to stop functioning (unless I enabled 
various "backward compabitility" options), and then re-generating 
classes eventually resulted in the custom classes having to be 
updated as well.  So, I moved back to DBI which is doing the job very 
well for me, and which I find is also more flexible despite being a 
little bit less convenient.  I suspect that I wouldn't be running 
into these issues with a framework system designed to work with 
DBIx::Class.  A DBIx developer in IRC explained to me once that 
DBIx::Class also goes to great lengths to shut off connection caching 
from the Apache::DBI module -- after switching back to DBI, the 
resulting performance gain has me wondering if this is correct.

	At one point I started to create a telnet server for a BBS-type 
system (just for fun), but had to put it on the back-burner due to 
time-constraints (customizing one of Apache 2 HTTPd's connection 
handlers made this possible).  Originally I started out using 
mod_perl on Novell's NetWare OS, but Novell stopped pre-compiling 
mod_perl2 so I switched to NetBSD (which I've been using ever since).

	I also started writing a Wiki system from scratch, and plan to 
continue with that eventually.

	I don't use proxying or virtualization for my web servers (it's all 
running bare-metal), just raw mod_perl2.  I'm extremely pleased with 
the high performance and solid reliability that I get from mod_perl2 
on NetBSD servers, and intend to keep using it (and promoting it) for 
years to come.

Randolf Richardson -
Inter-Corporate Computer & Network Services, Inc.
Vancouver, British Columbia, Canada

View raw message