Improving your Plone site’s performance

Plone experts know this. But the others need to know it too. After all, we’re all on the same boat !

You’re in the testing phase of your Plone project, and you find it slow ? Take the following corrective actions, and stop worrying !

  • Use a ZEO-based setup. This is important ! You can distribute the load on 2 or more ZEO clients. (Note that the ZEO server and clients can all be on the same machine.)
    It is possible to bind a ZEO client to a special type of requests such as “content contribution requests”. This way, you keep the other ZEO client(s) responsive for the “normal” requests.
    If you need automatic load balancing, add a load-balancer software such as Pound in front of the ZEO clients.
  • Take advantage of Zope’s HTTP Cache Managers.
    • A simple fix you can do for Plone 2’s default HTTP Cache Manager ; go on the HTTPCache object, and uncheck the “Cache anonymous connections only?” option. There is no reason you should not cache static content such as skin images/files for Authenticated users.
    • Invest a little more to go further with CacheFu-based caching policy management tools.
  • Install a Squid proxy-cache. It is recommended to serve the site with Zope behind Squid (or Zope behind Squid behind Apache).
    There is also Varnish as an alternative to Squid, though I haven’t yet tested it.

Leave a Reply

Please log in using one of these methods to post your comment: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: