[Zope] performance issues

Wolfgang Langner wl@flexis.de
Mon, 28 Oct 2002 14:31:55 +0100


Hello John,

 > I'm running a Zope-application (2.5.1, Python 2.1.3)
 > on a dual processor (1 GB mem) Redhat 7.3 machine.
 > User-authentication is done by the
 > exUserFolder-product (on Postgresql 7.2.1). An
 > apache-server runs in front of the Zope server.

 > Now for the problem/questions. Problem: unacceptable performance with 
 > 200
 > requests/sec. Questions: - which steps can be taken to improve 
performance ? for the moment 6 child processes are running which
 > each use 60 MB of memory (?isn't this alot) ;
 > increasing the number of threads will probably help,
 > but if each thread will probably use 60 MB
 >- how good is the smp-support of Zope (Python) ?

You have a dual processor machine, to double your
speed use ZEO.
Python doesn't use the second Processor. (see GIL Tread on comp.lang.python)

Use the cacheing of user Information in the exUserFolder.
(reduces access to postgresql DB)

Look at your object, how long they take to run.
Search the one that is slow and speed it up.
A usefull Product to get execution times is Call Profile:

http://www.zope.org/Members/richard/CallProfiler

Use Caches if its possible.
If you have a lot static content, you can use squid as a proxy cache
in front of Zope.

http://www.squid-cache.org

Hope it helps a little bit.

bye by Wolfgang