Squid integration pointers
Why Squid?
Squid is a web-proxy cache which can radically speed up your Zope/Plone site. It's the fastest solution, supports purging, load balancing, and has high availability. With Squid you can do 700+ Requests per second on a modest machine, on an average spring '04 server it's more like ~1500/s.
You can use it directly in front of Zope (see "Zope and Squid with ICP" below), but you can also do Squid -> Apache (virtual hosting, mod_gzip, rewriting) -> Zope.
Limi mentioned that even on a single machine it's faster to run two zeo clients load balanced by Squid. Below are some Squid resources.
Some links
- LocalhostSquidHOWTO -- Running Zope behind Squid on Localhost
- Zope and Squid with ICP -- intro about ICP which is used for load balancing and High availabilty
- A Squid-based network concept for Wikipedia.org -- not Zope-centric, but a good overview about HA, load balancing, your own Akamai
- squid-cache.org -- Squid 3 supports ESI. Mailing List, News Group
- Squid Manual: HTTPD-ACCELERATOR OPTIONS
- Edge Side Includes -- the future Zope Caching solution- afaik integrated into Zope3
- Web Caching Tutorial -- the most important caching headers
- RFC 2616 - HTTP header, especially the
Varyheader - CMFSquidTool -- currently a prototype in collective (by longsleep), should do the purge part soon, possibly also support for ESI.
Tutorial from the Plone Conference:
- Chris McDonough: Scaling Zope slides (47 slides, HTML format) -- Straight from the lessons Zope Corp. has learnt in scaling Zope, Chris discusses how to scale Zope to handle large volumes of traffic using Squid, ZEO and other techniques.
