RE: [Zope] RE: Zope and mod_python
Yes, during the first tests we did at lastminute.com, we saw a better load repartition accross processors on our test servers. This is because each request is handled in a dedicated Apache process, which is linked to an independent python process. Pascal -----Original Message----- From: zope-bounces@zope.org To: zope@zope.org Sent: 07/02/2005 17:58 Subject: Re: [Zope] RE: Zope and mod_python So, if I'm reading this correctly, would this mean that zope, when run this way, would now be able to better utilize a multiprocessor system? As I understand it, a normal zope install would only run on a single proc, but this sounds like it would result in that no longer being the case. Thanks! Tom Pascal Peregrina wrote:
FYI, I made that page :
http://zope.org/Members/pperegrina/ZopeHandler
Pascal
********************************************************************** This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error please notify the system manager.
This footnote also confirms that this email message has been swept by MIMEsweeper for the presence of computer viruses.
www.mimesweeper.com **********************************************************************
_______________________________________________ Zope maillist - Zope@zope.org http://mail.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope-dev )
Zope maillist - Zope@zope.org http://mail.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope-dev )
Pascal Peregrina wrote:
This is because each request is handled in a dedicated Apache process, which is linked to an independent python process.
Hmmm, how and where are connections made to the ZODB? Is there still a long-running process with this method? Chris -- Simplistix - Content Management, Zope & Python Consulting - http://www.simplistix.co.uk
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Chris Withers wrote: | Pascal Peregrina wrote: | |> This is because each request is handled in a dedicated Apache process, |> which is linked to an independent python process. | | Hmmm, how and where are connections made to the ZODB? Each mod_python child process is its own ZEO client. | Is there still a long-running process with this method? Not except for the ZEO storage server. Apache is responsible for managing the lifetime of its child processes (which would likely persist across some number of requests). This is the major benefit of the approach: sysadmins don't have to monitor / manage a separate daemon. Another potential benefit is that each child behaves as a single-threaded appserver, with no GIL-contention issues. A potential downside is that the child processes will not be able to reused the local ZEO client cache. Tres. - -- =============================================================== Tres Seaver tseaver@zope.com Zope Corporation "Zope Dealers" http://www.zope.com -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.4 (GNU/Linux) Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org iD8DBQFCCLw4GqWXf00rNCgRAvH9AJ48xgV31DG2JQIG/JwvcfwQ2OsV/wCfRbol cYfTEYTOhnQ0oIqxcSkhya0= =5tiT -----END PGP SIGNATURE-----
Tres Seaver wrote:
This is the major benefit of the approach: sysadmins don't have to monitor / manage a separate daemon.
Well, you still need a seperate daemon for the storage server, but granted, that's one less than the usual setup of Apache - Zope Web - Zope Storage
Another potential benefit is that each child behaves as a single-threaded appserver, with no GIL-contention issues.
:-D
A potential downside is that the child processes will not be able to reused the local ZEO client cache.
Well, I assume they'll keep the same client cache for as long as the child process exists? I guess it would be nice to find a way that child process could use a persistent ZEO client cache, right? Does each child process need to have it's own client cache (I'm guessing the way Pascal currently has it working, that'll be the case, whether it's needed or not...) and if it doesn't, is there any way the processes could share the cache in the "mod_zope" setup? cheers, Chris -- Simplistix - Content Management, Zope & Python Consulting - http://www.simplistix.co.uk
participants (3)
-
Chris Withers -
Pascal Peregrina -
Tres Seaver