[Zope] ZODB replication on a per-object basis?
Brad Clements
bkc@murkworks.com
Thu, 11 May 2000 09:44:27 -0500
On 11 May 2000, at 16:36, Petru Paler wrote:
> On Thu, May 11, 2000 at 09:29:31AM -0500, Brad Clements wrote:
> > Based on this, it appears that ZSS does not replicate at this time.
>
> You're right, but notice the "at this time". Once it will be made
> open source I'm pretty sure that someone will complete it.
Who is someone? Shouldn't that be us?
> ZEO _does_ invalidation. Otherwise it would be useless.
I saw no mention of how CS invalidates Zope's internal cache based on
asynchronous information from ZSS.
> > I'm looking for wide area replication .. like how you might implement a
> > CPAN for Python based on Zope.
>
> You want to do this too ? :) ZEO in its current form perfectly fits the
> bill, because you _need_ a centralized site which the mirrors replicate.
I disagree. I think the performance would be bad.
CS/ZSS is just an RPC implementation of FileStorage (it seems).
Therefore when Zope needs an object that is not in the in-memory
cache, CS has to execute an RPC call across the Internet to the
master copy -- slow..
Since the in memory cache has a limited size (I assume) and/or times
out old objects (I assume), statistically you're going to get hit with this
delay on the larger objects (Python packages) whenever you download.
If you use a distributed file system instead, you don't have this problem.
Each site can either be a replicating server.. or in the case of Coda,
each remote site can enable "file hoarding" in their client to keep local
copies of all objects (files) ..
You definately want local copies of all the data. But these copies need
to be automatically updated from "the master" (in this application there
is one master, but in Coda that does *not* have to be the case).
We could do a poor-man's job at this now by running both an FTP server
and a Zope server pointing to those FTPable files. The FTP server can
mount a distributed file system (afs, coda)... Then nightly just export the
Zope database and replicate that to all the clients.
But this isn't quite what I want...
Brad Clements, bkc@murkworks.com (315)268-1000
http://www.murkworks.com (315)268-9812 Fax
netmeeting: ils://ils.murkworks.com AOL-IM: BKClements