> 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.
[sNip]
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., "index.pl" 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
http://www.modperl.pl/how-to/
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 - [email protected]
Inter-Corporate Computer & Network Services, Inc.
Vancouver, British Columbia, Canada
http://www.inter-corporate.com