[Zope] What to buy for cheap Zope host?

Kent Polk kent@goathill.org
17 Nov 1999 22:58:40 GMT


On 14 Nov 1999 19:40:00 -0600, tommy_b@my-deja.com wrote:
>I'm building a computer to train & test Zope.  I hope to use PostgreSQL or MySQL for storing a good-sized database.  Zope would be used for allowing users to enter data & for output of formated querries.
>
>I wish to spend no more than $700 on this new computer I'm building (not including sound & video card + monitor).  What should I spend the most money on, CPU, memory, HD, or a balance?

We recently ran some tests on three machines to give us an idea of
what we needed. The ApacheBench queries were done with my Zope
PedSys (genetic database) Publisher product, which monitors the
filesystem for changes to wrapped tabular objects. I.e. it isn't
as FS-intensive as a relational database engine, but it is more so
than most Zope applications.

With the results I got (I didn't publish the extended test results
as they are harder to evaluate), under light-to-moderate loads such
as what you would see under development purposes, I'd shoot for
CPU speed first (running unix with at least 128MB ram), OS second,
disk I/O third (especially where database applications are involved),
and memory over 128MB fourth. If your database tables are large,
I'd probably bump up disk I/O and then ram in the list a notch.

--------------------------------------------
140 MHz Ultra 170 running Solaris 5.7 512MB ram:
Python compiled with SUNWspro/SC5.0

1 Pystone - 3 separate times :
This machine benchmarks at 1776.2 pystones/second
This machine benchmarks at 1782.53 pystones/second
This machine benchmarks at 1779.36 pystones/second

4 Pystones simultaneously:
This machine benchmarks at 1801.8 pystones/second
This machine benchmarks at 1769.91 pystones/second
This machine benchmarks at 1785.71 pystones/second
This machine benchmarks at 1763.67 pystones/second

4-2G striped Barracudas (bonnie):
    -------Sequential Output-------- ---Sequential Input-- --Random--
    -Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --Seeks---
 MB K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU  /sec %CPU
100  2170 96.8 11282 30.7 10998 35.0  1543 99.5 102978 99.6 5601.0 70.0

ApacheBench, Version 1.2 :
Complete requests:      10
Total transferred:      121600 bytes

Files on local drives:
Requests per second:    0.70
Transfer rate:          8.56 kb/s received

Files via NFS :
Requests per second:    0.71
Transfer rate:          8.63 kb/s received

--------------------------------------------------
400MHz K6-2 running NetBSD with 128MB ram:
Python compiled with gcc

1 Pystone - 3 separate times :
This machine benchmarks at 5434.78 pystones/second
This machine benchmarks at 5524.86 pystones/second
This machine benchmarks at 5464.48 pystones/second

4 Pystones simultaneously:
This machine benchmarks at 5494.51 pystones/second
This machine benchmarks at 5464.48 pystones/second
This machine benchmarks at 5524.86 pystones/second
This machine benchmarks at 5434.78 pystones/second

ccd0a (2 striped) ibm 4.5G 7200rpm scsi-2 UW (bonnie):
    -------Sequential Output-------- ---Sequential Input-- --Random--
    -Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --Seeks---
 MB K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU  /sec %CPU
100 15688 85.3 15252 27.4  4266  8.2 10796 51.3 11186 11.1 110.4  1.9
100 15696 86.3 15293 26.8  4667  8.7 11485 55.0 12397 12.0 114.7  1.9

Files on local drives:
---------------------
This is ApacheBench, Version 1.3
Complete requests:      10
Total transferred:      120240 bytes
Requests per second:    2.23
Transfer rate:          26.83 kb/s received

Files via NFS:
---------------------
ApacheBench, Version 1.2 :
Complete requests:      10
Total transferred:      120150 bytes
Requests per second:    2.36
Transfer rate:          28.35 kb/s received

--------------------------------------------------
333MHz Ultra 5 running Solaris 5.7 with 256MB ram:
Python compiled with SUNWspro/SC5.0

1 Pystone - 3 separate times :
This machine benchmarks at 3831.42 pystones/second
This machine benchmarks at 3875.97 pystones/second
This machine benchmarks at 3861 pystones/second

4 Pystones simultaneously:
This machine benchmarks at 3861 pystones/second
This machine benchmarks at 3861 pystones/second
This machine benchmarks at 3816.79 pystones/second
This machine benchmarks at 3816.79 pystones/second

Ultra5 8G EIDE (bonnie):
    -------Sequential Output-------- ---Sequential Input-- --Random--
    -Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --Seeks---
 MB K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU  /sec %CPU
100  4925 96.5 12174 16.3  4355 12.0  3445 98.9 12153 15.0 116.7  2.3

Data mounted via local fs:
---------------------
This is ApacheBench, Version 1.3
Complete requests:      10
Total transferred:      121620 bytes
Requests per second:    1.55
Transfer rate:          18.87 kb/s received