So I have been reading about how Python 2.3 is about 25% faster than older pythons and I thought I would try it out on some Zope goodness. I compiled Zope27b2 with Python2.3 and started doing some benchmarks. I tweaked a bunch of settings like what servers to start up, debug mode, interval check times but with all of that I could get Zope to max at about 60 requests per second using Apache Bench with 25 concurrency and 500 requests. I went back to my handy dandy Zope 2.5.2 installation and tweaking it I could get it to serve up at about an 85-90 RPS. For these tests I had nothing else running, I ran them more than a few times (for caching to catch up) and shutdown and restarted the servers to make sure there was nothing bad in one run. So is this a Zope27b2 thing? Is it a Python2.3 thing? Am I just testing too many different scenarios so it is not a good test? All of this on my MacOSX 1GHz G4, 2 GB of ram and a 120GB 7200 RPM WD SE drive with 8MB of cache. Here is a typical result with 2.7b2: bash-2.05a$ ab -c 25 -n 500 http://10.0.1.2:8080/index_html This is ApacheBench, Version 1.3d <$Revision: 1.1.1.9 $> apache-1.3 Benchmarking 10.0.1.2 (be patient) Server Software: Zope/(Zope Server Hostname: 10.0.1.2 Server Port: 8080 Document Path: /index_html Document Length: 3014 bytes Concurrency Level: 25 Time taken for tests: 8.529 seconds Complete requests: 500 Failed requests: 0 Broken pipe errors: 0 Total transferred: 1604000 bytes HTML transferred: 1507000 bytes Requests per second: 58.62 [#/sec] (mean) Time per request: 426.45 [ms] (mean) Time per request: 17.06 [ms] (mean, across all concurrent requests) Transfer rate: 188.06 [Kbytes/sec] received Connnection Times (ms) min mean[+/-sd] median max Connect: 0 0 0.0 0 2 Processing: 176 415 70.8 407 733 Waiting: 176 415 70.8 407 733 Total: 176 415 70.7 407 733 And this with Zope 2.5.2 bash-2.05a$ ab -c 25 -n 500 http://10.0.1.2:8080/index_html This is ApacheBench, Version 1.3d <$Revision: 1.1.1.9 $> apache-1.3 Server Software: Zope/(Zope Server Hostname: 10.0.1.2 Server Port: 8080 Document Path: /index_html Document Length: 3164 bytes Concurrency Level: 25 Time taken for tests: 5.085 seconds Complete requests: 500 Failed requests: 0 Broken pipe errors: 0 Total transferred: 1700895 bytes HTML transferred: 1585164 bytes Requests per second: 98.33 [#/sec] (mean) Time per request: 254.25 [ms] (mean) Time per request: 10.17 [ms] (mean, across all concurrent requests) Transfer rate: 334.49 [Kbytes/sec] received Connnection Times (ms) min mean[+/-sd] median max Connect: 0 0 0.1 0 2 Processing: 152 247 34.8 240 586 Waiting: 150 246 34.9 239 586 Total: 152 247 34.8 240 586