[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