[Catalyst] Switching to a production server
bobtfish at bobtfish.net
Wed Sep 10 00:12:34 BST 2008
On 9 Sep 2008, at 23:19, Emily Heureux wrote:
> At this time, I don’t know anything about fast_cgi or configuring
> apache or what have you, to work with Catalyst, but before I take
> that on, my question is, is it likely that the slow loading of very
> small images has to do with the default myapp_server.pl, and
> switching to something else will make a big difference with loading
> images and possibly other files?
By default, the myapp_server.pl which comes with catalyst for
development is _single threaded_. This means that if you have 200
images on the page, each image will be fetched one after the other,
which will be slow.
In a real deployment environment, you won't be single threaded (your
browser is likely to download 4 things at once), which will help.
Assuming that the images are static, you also want to configure your
web server to serve them statically, so Catalyst will never see the
image requests, this will significantly lower the overhead of serving
I recommend you set your app up with something like what your real
deployment is going to be (e.g. if your real deployment is going to
be fastcgi, then get fastcgi going on your development machine to
test it with).
See how your app looks then, and if you've still got speed issues you
can look at profiling the request (if that's what is taking the
time), and/or optimising the content (e.g. by using CSS sprites to
reduce the number of images in the page)..
More information about the Catalyst