Memory, performance

published Oct 30, 2009

Plone Unconference 2009. Myroslav Opyr, Jens Klein and others.

Each zeo client has its own object cache. If you have an 8 GB Data.fs in the zeo server, 16 GB memory, and 8 zeo clients, then the clients each have only 2 GB memory available. If something is needed that is outside the cache you need to access the disk, which is bad.

The bfg folks made something where you have to explicitly mark an object for writing; so objects that are just for reading can be shared between clients.

You can use the multiprocess package.

You can cache calculated results with memoize. Is then stored in every zeoclient. memoize is ready to switch to memcached so you can share the memoized data between the clients.