[Zope] Is ZEO Useful

sean.upton@uniontrib.com sean.upton@uniontrib.com
Wed, 15 Jan 2003 17:23:28 -0800


Your performance will degrade if you do this; however, you get the benefit
of being able to run a second Zope instance (either a full-blown instance,
or a maintenance application using Zope.app() in a python automation script
- useful for backup, cron jobs, etc); for example, we build and tear-down
tempoary Zope instances to make changes to content in the odb over ZEO, and
any memory leaks or other problems from such changes die along with the
temporary Zope instance.  Doing work out-of-process like this also
integrates better with cron jobs.

So, in summary, on a single box+cpu your reliablity stays the same, you
performance likely goes down (a little bit), but you gain some flexibility
in being able to have multiple Zope processes access the odbject database
without contention.  On a setup with multiple boxes (or multiple CPUs if you
have CPU affinity guaranteed), you will get increased performance as well.

ZEO's main advantages are in scaling out.  For increased reliablity with
ZEO, you need multiple nodes in a cluster of boxes running Zope/ZEO-client
instances, and the ability to load-balance between them and take dead-nodes
offline.  For increased availability on the ZEO storage server, you need to
replicate to multiple ZEO storage servers (which you can do with
DirectoryStorage - http://dirstorage.sf.net).

You still want to run a proxy server in front of Zope in a production
environment (Apache or Squid, I prefer Squid) to get better security and
performance from page caching.  ZEO works well alongside this, not as a
replacement for this type of setup (in fact if you have multiple nodes, Zope
2.6+ supports ICP, which will allow Squid to appropriately load balance a
bunch of ZEO client nodes).

Hopefully this helps.

Sean

-----Original Message-----
From: Mark Gibson [mailto:mark@dimensional.com]
Sent: Wednesday, January 15, 2003 3:08 PM
To: zope@zope.org
Subject: [Zope] Is ZEO Useful



Is ZEO useful in a single-processor environment?  Does ZEO provide any 
performance enhancement, or increased reliability over simply running 
the apache in front of Zope?



_______________________________________________
Zope maillist  -  Zope@zope.org
http://lists.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope-dev )