[Catalyst] Apache2 and mod_perl deployment issue
Tomas Doran
bobtfish at bobtfish.net
Thu Nov 17 09:23:14 GMT 2011
On 16 Nov 2011, at 18:51, Adam Jimerson wrote:
> On Wed, Nov 16, 2011 at 12:10 PM, Tomas Doran
> <bobtfish at bobtfish.net> wrote:
>
> and shared memory that mod_perl deployment had over fastcgi
>
> This just isn't true unless you're deploying many applications (like
> the doc says). Are you trying to run half a dozen or more apps?
>
>
> Not a half dozen but would more than likely end up running at least
> two apps on the server.
I'd take the ability to restart them separately (this being the main
advantage of external mode) and the fact that they can depend on
different (and incompatible) versions of libraries (with their own
local::lib each) over any theoretical memory saving..
> If that is wrong then they is there this section of the manual http://search.cpan.org/~hkclark/Catalyst-Manual-5.9002/lib/Catalyst/Manual/Deployment/Apache/FastCGI.pod#Authorization_header_with_mod_fastcgi_or_mod_cgi
> I was able to deploy my app using mod_fcgid, and I wasn't able to
> authenticate until I added the rewrite rules to the vhost file, so
> if there is a non mod_rewrite way of doing that then please share.
Right, but this is only if you're doing basic auth (which is
relatively uncommon), and due to an issue in Apache core itself (you
don't need to do this for any other web server)...
> It would also be helpful if the doc listed the pros between
> Standalone server mode, static mod, and dynamic mode if there are any.
Yes, yes it would. Patches would be very welcome for this - I'll try
to do it when I next get a tuit, but my TODO list is massive :)
I should also have noted - re speed - that unless you're putting your
mod_perl behind a front-end web server that's proxying and serving the
static content for you, then fastcgi is _extremely likely_ to
_trounce_ mod_perl in real world speed.
The separation you get between 'web application building a page' and
'web server serving a page to a slow user' means that you need only
very few (big) fcgi processes, and more (light) web server processes -
whereas with mod_perl, your app is loaded in every process - so you're
using memory allocated in the perl interpreter just to send bytes down
the wire (slowly)...
Cheers
t0m
More information about the Catalyst
mailing list