[Zope] system requirements

Matthew T. Kromer matt@zope.com
Tue, 28 May 2002 10:54:06 -0400


Tom Nixon wrote:

>Hi
>
>I need to quote for a fairly big Zope site and I am trying to work out
>what sort of spec machine I will need for hosting.
>
>The brief is for a minimum of 50 concurrent users, rising to a possible
>2000. They will be doing a lot of searching on the site, and there will
>be quite a lot of e-mails sent out by Zope. The site will also use an
>SQL database - either mySQL or postgreSQL.
>
>My current thinking is: 
>
> - Linux: RedHat?
> - Zope with ZEO in case it expands beyond one box
> - Apache
> - Squid?
> - 512 MB RAM
> - 18 GB SCSI with RAID
> - 1.8 GHZ processor
>
>Am I along the right lines?
>
>Will Zope coexist nicely with the database on the same box or should
>they be separate from day one?
>
>Cheers
>
>Tom
>


That sounds fairly reasonable for me.  Remember that Zope is primarily 
goverened by the pystone benchmark; my experience on DDR Athlons is very 
positive.

On a fast uniprocessor, you should be able to slice Apache, Squid, and 
Zope together with a database.  I've no doubt you can outgrow it in the 
future; but the key notion is to spend as few cycles rendering Zope 
content as possible. Agressive caching helps you do that, so running 
local Squid and or Apache will help.

Ultimately it comes down to getting some good metrics on how *your* 
application will perform in Zope.  It is easy to write a zope app that 
doesn't appear to perform poorly until it is under load.  It's 
frustrating to not be able to give you an absolute answer; but that's 
hard to do.  I like casting Zope performance in terms of "pystones used" 
which isn't really accurate, but provides a reference for scaling.  If 
an Athlon XP 2000+ has 25,700 pystones, and can render 50 application 
pages / sec, a 1 Ghz P III with 12,000 pystones is only going to render 
about 23 pages / sec.  My old SparcStation 10 with a whopping 43Mhz and 
about 800 pystones is going to come in at about 1.3 pages/sec.  That 
same SS10 can probably pump 400+ pages/sec with apache, though. 
 Spending a few more CPU cycles to move data into apache or squid can 
have a big payout if that means not having to rerender the page.



-- 
Matt Kromer
Zope Corporation  http://www.zope.com/