[ZODB-Dev] Synchronizing Mirror Sites

Norfleet, Sheppard S. sheppard.norfleet at ngc.com
Tue Jul 22 10:12:26 EDT 2003


Ok,

Well this application is a document collaboration tool using CMF,
CMFStaging, ZopeRepository, CMFPlone, and PloneStaging.

What complications do you forsee pursuing application level replication.
Should I include another base class in the base content type to support
replication?

Also, what are you thoughts on using OracleStorage and Oracle Replication?

Regards,

Shep

-----Original Message-----
From: Shane Hathaway [mailto:shane at zope.com]
Sent: Monday, July 21, 2003 2:04 PM
To: Norfleet, Sheppard S.
Cc: 'zodb-dev at zope.org'
Subject: Re: [ZODB-Dev] Synchronizing Mirror Sites


Norfleet, Sheppard S. wrote:
> It seems like all the available replication is centered on an available IP
> connection. The environment I am in, requries that I store up changes, and
> at a certain time of the day, burst the changes to master server, that
will
> send me updates from other servers.  Only in that short window of time is
> the master server available.
> 
> Therefore, I need to find a way to store the transactions in an outbound
> queue, and handle incoming transactions from an inbound source.  Does
anyone
> have any ideas about how I can accomplish this?

Is there any chance that the data from the master and secondaries will 
need to be merged?  Or does each node write exclusively to a particular 
part of the database?  If you have to merge data, you probably need to 
replicate at the application level.  If you don't need to merge data, 
you can use rsync or copyTransactionsFrom(), momentarily taking a node 
offline while importing data.  You might even take advantage of the 
restore() API to avoid the short downtime.

Alternatively, you can use Ape with a version control tool to merge data 
at the database level.  I'd like someone to try this, but I can't 
recommend it quite yet, since it wouldn't update the ZODB cache properly 
yet.

Shane



More information about the ZODB-Dev mailing list