[Zope] snappier zope.org/how to make sites as snappy

Martin Winkler marwin98@gmx.net
Mon, 20 Nov 2000 12:44:33 +0100


At 02:28 20.11.2000, you wrote:
>i've increased the cache numbers in Control_Panel.  i've also increased the
>thread numbers.  i've moved graphics to be served by apache.

not the best idea to serve graphics by apache. The setup in our company seems nice to me and looks like this:
squid in http-accelerated mode - see the various squid-related HowTo's
    (listening on port 80 and sending requests to port 81) ->
apache for ssl-functionality - configured as in Howto "Apache+ZServer+SSL"
    (listening on port 81 and on port 443 (ssl)) ->
ZServer
    (listening on port 8080)

BTW: we do not use the FTP-Server feature of Zope, since it sometimes kills all Zope servers - tested on 2 different machines with different flavours of Linux :-(

Don't forget to tell squid that it can cache your pages a while (we use 1hour=3600secs):
standard_html_header should start with something like this:

<dtml-call "RESPONSE.setHeader('Expires', _.DateTime(_.DateTime().timeTime() + 3600).toZone('GMT').rfc822())"
><dtml-call "RESPONSE.setHeader('Last-Modified', bobobase_modification_time().toZone('GMT').rfc822())"
><html>...

(the dtml-source is from "Howto: Caching with mod_proxy", but Apache didn't work right for us: it stored broken images in its cache, so we use squid in front of apache as proxy, and apache for ssl-redirects.)

the setup as described above works great for us: Zope (and PostgreSQL behind it) doesn't have much to do, since all graphics and html-outputs are stored in squid for 1 hour. (except with shift-reload, of course)

Hope that helps,

Martin

PS: no line-breaks used here because of code samples.