[Zope] zope performance issues
dieter at handshake.de
Tue May 18 16:45:30 EDT 2004
Trevor Warren wrote at 2004-5-17 19:04 -0700:
> Do help me push zope to the limits and i will share
>the results of the benchmarks as obtained. Somethings
>i need to start with.....
>>> Caching of Objects in Zope
Look at cache managers, e.g. RAMCacheManager to cache parts of pages.
Z SQL Methods provide caching.
You can tune the ZODB cache (in Zope 2.7 via the configuration file).
>>> Dynamic Thread Management Features in Zope
You have little control. You can control the number of threads
and the interval between thread switches are checked.
Note that Python (and therefore Zope) usually cannot use
multiprocessor systems efficiently.
This is because in a multi-threaded Python application
at most one thread can execute Python code -- even on
a multiprocessor system.
You need a different architecture (different processes sharing
a common database via ZEO).
>>> Shared pool connection management for SQL queries
The default pools are not bad (with respect to speed).
>>> Tuning Documents
A major speed issue is Zope's security mechanism.
Each single access to an object/a method is checked in
TTW code. This slows things down considerably.
When you are interested in high speed rendering,
you can do it in an External Method that (maybe)
renders a "DocumentTemplate" directly.
>>> Monitoring of current instance
In what respect?
>>> Capability to pump test load across numerous Zope
>Servers(If none of the above work)
Many Zope's + one ZEO.
There is a "ZEO" HowTo around.
More information about the Zope