[Zope] Assessment?

Phillip J. Eby pje@telecommunity.com
Sat, 26 Feb 2000 10:09:01 -0500


At 09:28 PM 2/25/00 -0800, Dave Goodrich wrote:
>
>I believe Zope can do what we need. We plan to use the server to 
>serve up approx 200 pages, pull downs and trees will be populated 
>with query results, pages will be personalized, all the general web 
>app stuff. The server must be able to support upto 40k requests per 
>day. All content will come from the SQL server (we are looking at 
>Sybase and Oracle I'm open to suggestions). SQL will be the heavy 
>lifter using compiled in functions for queriying tables with well 
>over 100k records. I like the SQL connectors in Zope, they are easy 
>to use and customize. Basicly Zope must just maintain sessions, 
>render charts from SQL results, and populate the page with data on 
>request. 
>
>My question is this, has anyone built a web app in Zope this large? 

An app I wrote w/ZPublisher, DTML, and Sybase is handling (very complex)
queries against tables with up to 2 million records currently, and serving
probably ~80K hits per day, spread across two 270Mhz dual-CPU SGI O200
application servers.  (The database server is a seperate, Cray-linked pair
of similar machines.)  The app server machines also handle a significant
volume of mail, destined for the application or being sent out from it (~1
million messages/year), several LDAP server processes, and a host of
utility crons.  We have 700+ employee logins, hundreds of whom are usually
logged in at the same time, all day long, using it as the primary
application of their job, spread across over half a dozen timezones, with
smaller groups on non-daytime shifts.  Downtime, accordingly, has to be
minimal.

My app is not in Zope, per se, since it does not use ZODB even to store its
application code.  However, it was originally written in Principia (Zope's
predecessor) and then ported to a simple engine I wrote to let directories
and files emulate folders and DTML methods.  I did this because Principia
was not multithreaded, and I needed multiple processes/processors to
support the volume.  Nowadays, with Zope, it would probably be quite
possible/practical to run my app within it, although the port back would be
a killer because of the divergent evolution of my own framework and Zope
over the years.  I am, however, planning to develop a new (and considerably
more demanding) application directly in Zope.