[Zope] zope performance issues

Chris McDonough chrism at plope.com
Wed May 19 02:22:05 EDT 2004


On Wed, 2004-05-19 at 01:59, Trevor Warren wrote:
> Hello  Paul,
> 
> --- Paul Winkler <pw_lists at slinkp.com> wrote:
> > FYI, that's a really unusually high thread count for
> > zope.
> > You may actually be hurting yourself there by adding
> > overhead for all those threads.
> [snip]
> 
>  Okie. For a 50 user test what would be the number of
> child threads required towards servicing the 50+
> concurrent iterations.

A test emulating 50 users doesn't necessarily need 50 threads.  Highly
concurrent Zope applications usually get away with using 4-7 threads for
this purpose.

> > Also, keep the number of ZODB connections at least
> > as high as the number of worker threads.
> [snip]
> 
>  Where does one tweak this????. Would appreciate a
> pointer on the same please.

This is explained on http://www.plope.com/misc/szweb/img19.html

zserver-threads in zope.conf is the number of Zope threads

the "pool-size" parameter in the <zodb_db main> section of zope.conf is
the number of ZODB connections.

So if I wanted to futz around with it by bumping up the number of Zope
threads to 20, I might have something like this in my zope.conf file:

zserver-threads 20

<zodb_db main>
    # Main FileStorage database
    <filestorage>
      path $INSTANCE/var/Data.fs
    </filestorage>
    mount-point /
    pool-size 25
</zodb_db>

You can retest after changing these numbers to various things.  Just
keep pool-size at some number just above the number of threads and you
should be ok.

Another important setting is explained on
http://www.plope.com/misc/szweb/img22.html.  Make *sure* to turn off
debug mode in zope.conf.  By default it is on (to help developers).  Put
this in your zope.conf file to turn it off:

debug-mode off

A final important setting, the ZODB cache size, is explained on
http://www.plope.com/misc/szweb/img20.html .  It can effect performance
dramatically.  It's controlled by the cache-size parameter of the
zodb_db section like so:
<zodb_db main>
    # Main FileStorage database
    <filestorage>
      path $INSTANCE/var/Data.fs
    </filestorage>
    mount-point /
    pool-size 25
    cache-size 20000
</zodb_db>

I'll be interested to hear your findings after you play around with this
stuff.

- C





More information about the Zope mailing list