Speedup: Plone 4 and Caching
plone.app.caching (et al) speeds up Plone 4
Plone 4 is much faster than Plone ever was. But anyway, you want caching in front of it. So I do.
We're using the chain browser -> nginx -> varnish [-> pound] -> Zope -> (ZEO).
Plan is to
- let the browser cache as much as possible,
- let varnish cache as much as possible,
- let Zope purge pages in varnish after update.
With Plone 4 we get a complete new caching infrastructure. Its plone.app.caching and its dependencies plone.caching, z3c.caching, plone.cachepurging and plone.transformchain.
Now, at time of writing, Plone 4 is beta and all caching infrastructure is alpha. To make it work you better take it from subversion. Take your buildout (with mr.developer as usal) and modify it like so:
[buildout]
# ...
auto-checkout +=
# ...
plone.app.caching
plone.cachepurging
plone.caching
z3c.caching
plone.transformchain
# ...
[sources]
# ...
plone.app.caching = svn https://svn.plone.org/svn/plone/plone.app.caching/trunk/
plone.cachepurging = svn https://svn.plone.org/svn/plone/plone.cachepurging/trunk/
plone.caching = svn https://svn.plone.org/svn/plone/plone.caching/trunk/
z3c.caching = svn http://svn.zope.org/repos/main/z3c.caching/trunk/
plone.transformchain = svn https://svn.plone.org/svn/plone/plone.transformchain/trunk/
[versions]
# ...
z3c.form = 2.2.0
[instance]
eggs =
# ...
plone.app.caching
Now let buildout run, (re)start your instance and apply the profile of plone.app.caching (HTTP caching support).
In Plones control panel theres now a new item Caching - here you get verbose instructions how to configure it.
Photo by dugspr at Flickr under CC-License.
