[Catalyst] Re: Catalyst vs Rails vs Django Cook off

Marcello Romani mromani at ottotecnica.com
Thu Jan 18 08:02:50 GMT 2007


Jay K ha scritto:
> I agree 100% on this... if we are judging Catalyst, et al, as simple 
> dispatchers, then we should consider apache+cgi in the discussion as 
> well - as apache is obviously one of the most venerable and widely 
> deployed dispatchers out there.

...and is probably faster than Catalyst at doing that.

> 
> A framework is much more than that.  In my experience, the costs in time 
> and money involved in building and maintaining the code for an app 
> outweigh the cost of deploying it by huge margins.  Furthermore, by the 
> time you are experiencing enough traffic to be analyzing the performance 
> at this granular a level, there are much better ways to improve your 
> responses per second that cost much less in terms of time and money.
> 
> These days, for less than the cost of a week of work, you can double 
> your serving capacity easily - and because of the 'fringe benefits' of 
> using Catalyst this is usually simply a matter of swapping out session 
> and caching plugins (if you even use them) to the more cross-server 
> compatible modules.

This brings another point into the mix: how easy is to swap those 
modules? How much code do you have to change in you app to make it work?
If a framework has a good plugin system, you can just tell it to use a 
different cache module (e.g. swap out Cache::FastMMap in favor of 
memcached) and restart the application.

> 
> If you are using a frontend cache like squid, you can do even more 
> cost-for-performance-wise.
> 
> Personally, I use Catalyst because it takes care of a lot of details I 
> would rather not worry about.  When I  am free of worrying about all 
> those details, I can focus on building JUST my application logic.  This 
> means that my application logic tends to be more solid, because I am not 
> tracking a ton of specifics outside of my app.
 >

This could be a good starting point for a comparison between web frameworks.
Catalyst is very good in this area (IMHO) because for example I can 
develop on WinXP using the test server and then deploy under 
Linux/mod_perl *without changing a single line of code in my app* (there 
could be issues if I use perl modules that are less portable than 
Catalyst, but that's not Cat's fault).
That's a pretty impressive cross-platform-ness IMHO ! :-)

> Because I'm not constantly crossing the line between my app and base 
> functionality (responding to HTTP, getting the correct bit of code 
> executed based on the request, etc.), I am not chasing bugs related to 
> that line.  I can rely on the fact that it will always happen in a 
> particular way and if I have a bug, it's more than likely in my 
> application, so I can focus there.
> 
> That is the power of a Framework any 'benchmark' that doesn't take those 
> things into account is so much fluff and of no use to me.

Agreed.

> 
> JayK
> 

-- 
Marcello Romani
Responsabile IT
Ottotecnica s.r.l.
http://www.ottotecnica.com



More information about the Catalyst mailing list