[Zope] ZSERVER, THREADS, PERFORMANCE & FUTURE PERFORMANCE
Hannu Krosing
hannu@tm.ee
Thu, 11 Nov 1999 22:36:53 +0200
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