-----Original Message----- From: Samu Mielonen [mailto:ex@uiah.fi] Sent: Friday, July 09, 1999 5:36 AM To: Zope@Zope. Org Subject: [Zope] Zope, performance and multithreading (beginner questions)
Hello,
another set of newbie questions from somebody who's just begun with Zope:
If I try to aim for moderately good (or beyond that) performance with Zope, what should I use for data storate (Z ODB3, MySql)?
That decision should be based purely on the structure of your data. if it's relational, go MySQL, if it's not, don't. Performace comes from good application design.
What about http-server, if perfomance needs to be fast for multiple concurrent dynamic pages with a lot of persistent storage access? Apache, Medusa, something else?
Apache might be a bit slower in terms of latency (total time to complete request) due to a moderatly expensive fork() call that happens in PCGI but we've seen PCGI do a million hits a day on modest hardware, nothing to sneeze at.
Also, will I benefit (performance wise) from running Zope under Linux in a 2 CPU SMP configuration? (i.e. is it multithreaded properly to take advantage of more than one cpu)?
Sure. Please note that Python has a global interpreter lock, which means that even if the program is multi-threaded, only one thread can be interpreting python code at at time. This does not exclude, however, computations and IO from happening simultaneously, and of course other processes which are involved like Apache (if you use it) can take advantage of the other processor.
Any other issues that I should consider when aiming for fast response times under a heavy load? (i.e. specific coding/design approaches, except doing most everything in C :)
Zopes response time is good, I've been doing some informal benchmarks and I can get about 40 responses per second, this is very impressive for a dynamic system, I'd be interested in seeing how the other Java based app servers compare (they probably don't). Other than that, good design is your friend. -Michel
Best regards, Samu Mielonen
-- "Zone of proximal development - ...the conceptual space or zone between what a [human] is capable of doing on his or her own and what [he/she] can achieve with assistance from ... a more capable peer." - The Penguin Dictionary of Psychology
_______________________________________________ Zope maillist - Zope@zope.org http://www.zope.org/mailman/listinfo/zope
(For developer-specific issues, use the companion list, zope-dev@zope.org - http://www.zope.org/mailman/listinfo/zope-dev )