On Tue, 8 Jun 2004 10:04:05 -0400 "Gerry Kirk" <gerry@dioceseonline.com> wrote:
Generally increasing the cache size is the most effective way to reduce loads. Try increasing the cache to say 15000 (assuming you have enough RAM on the server) and see how that affects the load rate. 2000 is a relatively low setting, but that really depends on the size of the ZODB. How many objects are in your ZODB? Are you using ZEO? (I assume not)
showing 176000 objects
A cache size of 2000 only allows 1% of the objects to be cached at once. 15000 is much better (about 8.5%), but you could still go higher if you have the RAM. Since the cache is per-thread, it can sometimes be better to run fewer threads with bigger caches. You could try lowering the number of threads to 2 and doubling the cache size. This may be better than 4 at 15000, but it depends heavily on your application and the load it experiences
I am using ZEO with one ZEO client, running on same server.
I'll try using 15,000 cache setting. This is what I now have in my zope.conf:
<zodb_db main> cache-size 15000 <zeoclient> cache-size 20000000
Try upping the client disk cache size as well. This looks like the default (20MB) which is quite small. I would probably multiply this by 10-30x. An indication for a too small ZEO client cache is many "Cache flip" log messages from Zope. -Casey