[Zope] Tomcat vrs Zope Round One

J. Atwood Jatwood@bwanazulia.com
Thu, 27 Apr 2000 16:15:44 -0400


I just set up a Jakarta Tomcat installation (for someone else!) and was able
to do some quick benchmarking on two *very* similar machines and here is
what I found.

Zope Machine: RH 6.1, 300 MHz, 256 MB RAM, 8 GB EIDE Drive - Zope. 2.1.4

Tomcat Machine: RH 6.1, 500 MHz, 512 MB RAM, 3 x 9.1 SCSI in RAID - Jakarta
Tomcat 3.1

Using AB (ApacheBench) and hitting a test JSP page that I replicated in Zope
(exactly the same words, etc).

Tomcat:
Document Path:          /test.jsp
Document Length:        168 bytes

Concurrency Level:      100
Time taken for tests:   5.306 seconds
Complete requests:      100
Failed requests:        0
Total transferred:      57024 bytes
HTML transferred:       16800 bytes
Requests per second:    18.85
Transfer rate:          10.75 kb/s received

Connnection Times (ms)
              min   avg   max
Connect:       63   121   177
Processing:  3473  3911  5063
Total:       3536  4032  5240

Zope:

Document Path:          /test.html
Document Length:        157 bytes

Concurrency Level:      100
Time taken for tests:   2.141 seconds
Complete requests:      100
Failed requests:        0
Total transferred:      36360 bytes
HTML transferred:       15857 bytes
Requests per second:    46.71
Transfer rate:          16.98 kb/s received

Connnection Times (ms)
              min   avg   max
Connect:        5     8    12
Processing:    94  1091  2117
Total:         99  1099  2129

------

I thought... wow... so I ran it again, and again and again. Each time the
Tomcat stats went down as Zope stayed constant.

Now I know that this does not mean that Zope is the fastest thing on the
planet but it is an interesting comparison. I mean, 2 x as fast on a machine
that is half as fast. Strange but true. So much for "Java Speed"

I decided to do it again.. this time with 25/1000 figuring Tomcat would
build up and start really flying. Here is what I got.

Tomcat:

Concurrency Level:      25
Time taken for tests:   41.252 seconds
Complete requests:      1000
Failed requests:        0
Total transferred:      582555 bytes
HTML transferred:       177000 bytes
Requests per second:    24.24
Transfer rate:          14.12 kb/s received

Connnection Times (ms)
              min   avg   max
Connect:        0     0     5
Processing:   183  1015  2300
Total:        183  1015  2305

Zope:
Concurrency Level:      25
Time taken for tests:   19.360 seconds
Complete requests:      1000
Failed requests:        0
Total transferred:      360000 bytes
HTML transferred:       157000 bytes
Requests per second:    51.65
Transfer rate:          18.60 kb/s received

Connnection Times (ms)
              min   avg   max
Connect:        0     0     2
Processing:    71   478   540
Total:         71   478   542


Yupp... better for both but Zope still was able to serve up the same content
on a slower machine twice as fast.

Next, I guess, would be to write some code to actually "do" something on the
machine and see what it could do. Also, I should level the playing field by
installing Zope on the faster machine and seeing what it can do there.

Comments?

J