Trevor Warren wrote:
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 the RAMCacheManager included with Zope. This will make a big difference.
Dynamic Thread Management Features in Zope
You can adjust the number of threads in the zope.conf file (for Zope 2.7).
Shared pool connection management for SQL queries
Be careful with this. Unlike most other systems, Zope has its own built in object store (ZODB) and hence does not 'look' like many other systems that have an app server and then persist the data to a separate SQL server.
Tuning Documents
Well, DTML is pretty much been superseded now by ZPT. I can't say ZPT is any quicker than DTML, but it is what should be used now. Please post the DTML you are using, as we may be able to offer some tuning hints. If you are doing something like an SQL select from a RDBMS and then iterating over a large result set, there are some well known techniques to speed things up.
Monitoring of current instance
There is a debug screen within Zope, or just use standard process monitoring tools.
Capability to pump test load across numerous Zope servers
This is where Zope is very good. It scales very well, and is extremely easy to do, and requires (in most cases) no changes to the application code. One thing to mention, is that python does not utilize multiple processes very well. Hence if you have a multi-processor server, you are better off running multiple ZEO clients, one for each processor. I hope this helps. If you can send us any more information about your test setup and benchmarks we may be able to help more. :) -Matt -- Matt Hamilton matth@netsight.co.uk Netsight Internet Solutions, Ltd. Business Vision on the Internet http://www.netsight.co.uk +44 (0)117 9090901 Web Design | Zope/Plone Development & Consulting | Co-location | Hosting