Sam Gendler wrote:
Regardless, 30 TPS is a terrible score. However, I suspect there is something going on here that is skewing the numbers on the Zope test. I have been in webserver development for many years, most of them on the cutting edge, and I have spent a LOT of time benchmarking various servers and proxies. I haven't benchmarked Zope at all, but Zope feels much faster than a 30 TPS webserver. Generally, on a server that slow, requesting a single object from a browser will not exactly feel quick, and Zope tends to feel almost instantaneous.
Zope usually has very good latency but much worse throughput (due to very high level of dynamism)
This is a very subjective analysis, but I have learned to trust my feelings on this one. I have never looked at the Medusa code at all, but I suspect that there is something about the zeustest that causes the Zope server to be unhappy. It could be that Medusa does not handle concurrency well at all, which would be a very bad thing. I assume the test you are using is similar to the apache bench. If so, you should definitely see more than 4 threads in use at once on the server, since there should be 10 connections open at all times (assuming the -c option is comcurrency, although -t could be threadcount) .
This time I changed the concurrency (-c , -t is timelimit) on zeus_benc side -c 1 - 41 TPS -c 2 and up ~ 35 TPS and max 4 threads showing as being used in top. the top lines of top looked like this on -t 30 -c 100 10:36pm up 11 days, 22:56, 3 users, load average: 0.60, 0.41, 0.24 93 processes: 91 sleeping, 2 running, 0 zombie, 0 stopped CPU states: 32.5% user, 32.7% system, 0.0% nice, 34.6% idle Mem: 1036316K av, 262628K used, 773688K free, 75440K shrd, 108888K buff Swap: 0K av, 0K used, 0K free 92476K cached 14639 zope2 12 0 8044 8044 1748 R 0 25.3 0.7 0:36 python 14643 zope2 13 0 8044 8044 1748 R 0 18.7 0.7 0:20 python 14644 zope2 12 0 8044 8044 1748 S 0 16.1 0.7 0:16 python 24229 hannu 2 0 476 476 328 S 0 3.0 0.0 0:00 zeus_bench 16688 root 4 0 1056 1056 844 R 0 1.3 0.1 0:21 top 14647 zope2 1 0 8044 8044 1748 S 0 0.7 0.7 0:09 python 1 root 0 0 472 472 408 S 0 0.0 0.0 0:04 init 2 root 0 0 0 0 0 SW 0 0.0 0.0 0:01 kflushd BTW, I don't know if the load average of 1.0 means that one or two processors are running at full throttle. Does anyone know if adding two more processors would change these numbers ? ----------------- Hannu