Difference in active/non active objects distribution in caches of zserver-threads between Plone 3/Plone 4
Fred van Dijk <f.van.dijk-1kr/[email protected]>
| Newsgroups | gmane.comp.web.zope.plone.devel |
|---|---|
| Message-ID | <[email protected]> |
Hello, Over the years I've read quite some email threads and pages on optimising, selecting 'the right' zodb-cache-size value. That's not what this question is about though ;-) I noticed a difference between Plone 3/ Zope 2.10 and Plone 4/Zope 2.13 when looking at the Cache Parameters in the ZMI after a medium site has been running for at least a few days. When I set a zodb-cache-size of 20000 , this will be listed as "Target number of objects in memory per cache 20000" and after the caches saturate, every thread will grow eventually towards the 20000, where the different threads are 2000-3000. For example it could look like this with zserver-threads set to 3. active total active & non active 19103 40465 17411 31655 18921 31582 With another high volume site, all threads will quite soon max out to the set zodb-cache-size. In Plone 4/Zope 2.13 this looks a bit different, for another medium site. Active Total active & non active 4886 10294 18200 67720 1507 3298 It seems that one thread is 'preferred' and gets most of the traffic and fills up its cache, where thread 2 and 3 are barely used, at least looking at the cache values. I have already ruled out load balancer queuing (for example having maxconn 2 in haproxy) & load balancing, with a load balanced setup with 2 or three zeoclients each zeoclient shows the same distribution, disabling other backends and setting maxconn to 6 (allow 6 simultaneous requets to the backend) in haproxy doesn't change anything either. zodb-cache-size-bytes has been turned off. I had this enabled for a site, saw these numbers and my first hunch was that the byte limiting was the culprit, looking back at email threads with claims that this feature should or should never have worked correctly. Increasing zserver-threads in Plone 4 to say 6 only lists more thread caches that are not used, 200-500 objects active at most. Has the Zope 2.13 server been optimised to always prefer the hottest thread and thus fill its cache or am I just not having enough simultaneous traffic to these sites to fully load all threads (and is Plone 4 that much faster, go go marketeers)? Or maybe I am reading the numbers incorrectly? Do others also see these values with high/low volume sites in Plone 4, compared to Plone 3 sites? With kind regards, Fred van Dijk -- Zest Software Hoefsmidstraat 41 3194 AA Hoogvliet Tel: 010-2959251 "Solid & Stimulating" ------------------------------------------------------------------------------ October Webinars: Code for Performance Free Intel webinars can help you accelerate application performance. Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from the latest Intel processors and coprocessors. See abstracts and register > http://pubads.g.doubleclick.net/gampad/clk?id=60135991&iu=/4140/ostg.clktrk