[Zope3-Users] threads, pool size and cache recommendations (quad core)

Jim Fulton jim at zope.com
Wed Dec 16 09:24:51 EST 2009


On Wed, Dec 16, 2009 at 8:26 AM, Roy Mathew <rmathew8 at gmail.com> wrote:
> Folks, I am looking for some configuration advice.
> I am running a zope3 application that uses the ZODB. I expect a peak load of
> a 100 concurrent users, and am on a *quad* core Intel Xeon Linux box. Am I
> better off running 2 or 3 ZEO clients talking to the app-server (I am
> assuming that the OS will load balance so that all processors are utilized
> well). Or should I not use ZEO at all, and simply assign a large cache, a
> large connection pool and lots of threads to a single process. I am sure
> that this is an issue many of you have had to contend with. I would
> appreciate some rough idea of what the numbers should be for each of the 2
> scenarios I outline.

Assuming that your application ends up being CPU bound, you should use
4 single-threaded processes. (One per core.)  Python can't (generally) make
use of more than one processor.

If you're not CPU bound, then  you can increase the number of threads until
you are.  That's broad-brush advice. Keep in mind that the more
threads/processes you have, the more  memory you'll use for a given
cache size.  The optimum cache size will depend a lot on your app.

Jim

-- 
Jim Fulton


More information about the Zope3-users mailing list