[Zope-dev] A thought for 2.6 about various leaks and memory problems

Toby Dickenson tdickenson@geminidataloggers.com
Tue, 19 Mar 2002 13:31:21 +0000


On Tue, 19 Mar 2002 08:08:47 -0000, "Adrian Hungate"
<adrian@haqa.co.uk> wrote:

>For the last few weeks (And maybe longer) I have been seeing lots of
>messages about zope leaking, the gc crashing and generally, Zope going
>senile after long runtimes or lots of requests. This was (And I believe
>still is) a problem for Apache, which they solved by having threads only
>live for a certain number of calls, then they die and are replaced by =
newly
>created threads. I know that with the current ZODB access model, this =
would
>be too slow, but is there any way that the opening of the ZODB could be
>moved to a different thread or earlier, before the fork, so that we =
could
>simply kill senile threads without killing the entire shooting match?

Sure. Run two Zope processes connected to a single ZEO server. If you
use a load balancer that knows to avoid a dead backend, then you are
safe as long as the zopes dont go down at the same time.

See also this proposal for getting lame Zopes killed quickly:

http://dev.zope.org/Wikis/DevSite/Proposals/ToleratingHangsAndLeaks


Toby Dickenson
tdickenson@geminidataloggers.com