[ZODB-Dev] Speeding up ZODB (was "redis cache for RelStorage")

Shane Hathaway shane at hathawaymix.org
Fri May 6 16:21:52 EDT 2011


On 05/06/2011 02:14 PM, Jim Fulton wrote:
>> It sounds like you primarily need a bigger and faster cache.  If you
>> want to make minimal changes to your setup, try increasing the size of
>> your ZEO cache and store the ZEO cache on either a RAM disk (try mount
>> -t tmpfs none /some/path) or a solid state disk.  Remember that seek
>> time is 5-10 ms with spinning drives, so putting a ZEO cache on a
>> spinning drive can actually kill performance.
>
> If this on Linux and you have enough RAM, the data should be in the
> disk cache anyway, so I don't see any benefit to a RAM disk.

If there is memory pressure then Linux will evict some of the cache from 
RAM, causing the ZEO cache to be much slower than the ZEO server.  I've 
seen that happen often.

"mount -t tmpfs" is an easy solution that has been available widely for 
a long time now.  You can even allow non-root users to do it by changing 
/etc/fstab.  If you're really lazy, you can just put your ZEO cache in 
/dev/shm (which should always be a RAM disk).

Shane


More information about the ZODB-Dev mailing list