[Zope] high loads, more threads, spinning wheels

Jens Vagelpohl jens at dataflake.org
Sat Apr 30 07:35:02 EDT 2005


> Can this be taken to mean that:
>
> - the practical maximum number of threads to run your single (non-ZEO)
> zope instance is {number of zodb connections in pool} else you risk
> deadlock

No, there should be more connections than threads, just as in the 
original configuration.


> if yes, would upping the number of ZODB connections effectively raise
> the ceiling - e.g. 12 ZODB connections -> 12 threads should perform
> properly ?   Is increasing the number of ZODB cx's possible, let alone
> advisable?  (why the default of 7 - not 6 or 8?)
>
> More concretely, is there any good way to increase the request-handling
> capacity of a standalone instance, beyond the limits imposed by the
> defaults, without deploying ZEO?

Trying to squeeze a single instance that way is fraught with problems, 
and not just the experimentation needed to come up with sane values for 
threads, connections, and then connection cache sized to avoid memory 
contention. A single Zope process also means you are running one Python 
process with one global interpreter lock. It's just a bad situation to 
base a production site on. Use ZEO and set up additional clients as 
needed, anything else is hackish and error-prone.

jens



More information about the Zope mailing list