RE: [Zope-dev] Integrating ZEO with Zope 2.7
+1 IMHO, Zope releases should, in this scenario, be configured by default to use a custom_zodb.py file with ClientStorage over a socket at startup, making the default config of Zope one that uses ZEO. Also, start scripts should be distributed with options to support both the following: - Zope's start script Start ZEO via ZEO's start.py, wait for confirmation of loaded storages, then start Zope's z2.py - Separate shell scripts to start each The advantage to this is the ability get access to the ZODB in automation and sysadmin scripts without taking Zope down. This should be transparent to those who don't care, unless there is a huge performance difference between directly using FileStorage, and using ClientStorage on a local socket to the same end (is the protocol overhead really that much?)... Sean -----Original Message----- From: Guido van Rossum [mailto:guido@python.org] Sent: Wednesday, October 02, 2002 11:27 AM To: zope-dev@zope.org Subject: [Zope-dev] Integrating ZEO with Zope 2.7 We're close to finishing a new version of ZEO, which will be released as part of the next ZODB3 release (formerly StandaloneZODB). I think this would be a good opportunity to make ZEO a standard part of Zope, starting with Zope 2.7. Advantage for users: if you download Zope, you have everything you need; you don't have to find and download a separate ZEO or ZODB release. Advantage for Zope developers: no need to test and maintain a separate ZEO release. There will still be a separate ZODB3 release, which will include ZEO. We have to do this anyway, for people who want to use ZODB outside Zope. Is there anybody who thinks this is a bad idea? (Full disclosure: Brian & Jim think it's a good idea, as long as we make sure that the ZEO that goes into the Zope 2.7 release is properly documented from the sysadmin POV, i.e. how to start/stop/configure. Of course we'll do this.) --Guido van Rossum (home page: http://www.python.org/~guido/) _______________________________________________ Zope-Dev maillist - Zope-Dev@zope.org http://lists.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope )
On Wednesday 02 Oct 2002 8:03 pm, sean.upton@uniontrib.com wrote:
+1
+1
IMHO, Zope releases should, in this scenario, be configured by default to use a custom_zodb.py file with ClientStorage over a socket at startup,
That is a tempting idea. Use of a TCP socket has security implications that make it a bad choice for a default, unless we implement mutual authentication. Use of a unix socket has the obvious problem that it wont work on windows.
IMHO, Zope releases should, in this scenario, be configured by default to use a custom_zodb.py file with ClientStorage over a socket at startup,
That is a tempting idea.
Use of a TCP socket has security implications that make it a bad choice for a default, unless we implement mutual authentication.
Use of a unix socket has the obvious problem that it wont work on windows.
What about using localhost? I'm not sure, but it seems to me that localhost cannot be connected to from outside the machine. On Unix, a Unix socket is the best idea; on Windows, localhost would prevent access from outside the machine, and Windows boxes typically have only one user, so I'm not concerned about internal attackers. --Guido van Rossum (home page: http://www.python.org/~guido/)
On Wed, 2002-10-02 at 16:03, sean.upton@uniontrib.com wrote:
+1
+1 for me too
IMHO, Zope releases should, in this scenario, be configured by default to use a custom_zodb.py file with ClientStorage over a socket at startup, making the default config of Zope one that uses ZEO.
I'm not sure about this. Beside Toby's comment about the problems of using TCP and UNIX sockets, using ZEO decreases performance in the single client scenario. I do believe it should be as easy as possible to use ZEO in Zope (and so I support the inclusion of ZEO in Zope by default) but this should be a conscious decision, made by someone that's aware of the consequences (such as increased read and write conflict errors).
Also, start scripts should be distributed with options to support both the following: - Zope's start script Start ZEO via ZEO's start.py, wait for confirmation of loaded storages, then start Zope's z2.py - Separate shell scripts to start each
That would certainly be nice. It's not necessary, however, to wait for the ZEO server to start before starting the ZEO client, as it will continuously try to connect to the server.
[...]
Cheers, Leo -- Ideas don't stay in some minds very long because they don't like solitary confinement.
IMHO, Zope releases should, in this scenario, be configured by default to use a custom_zodb.py file with ClientStorage over a socket at startup, making the default config of Zope one that uses ZEO. Also, start scripts should be distributed with options to support both the following: - Zope's start script Start ZEO via ZEO's start.py, wait for confirmation of loaded storages, then start Zope's z2.py - Separate shell scripts to start each
The advantage to this is the ability get access to the ZODB in automation and sysadmin scripts without taking Zope down. This should be transparent to those who don't care, unless there is a huge performance difference between directly using FileStorage, and using ClientStorage on a local socket to the same end (is the protocol overhead really that much?)...
I'm not sure that such a drastic change can be done without breaking expectations set by previous Zope releases. But I'll let the Powers That Be decide on this -- I'm not touching the default configuration. --Guido van Rossum (home page: http://www.python.org/~guido/)
participants (4)
-
Guido van Rossum -
Leonardo Rochael Almeida -
sean.upton@uniontrib.com -
Toby Dickenson