[ZODB-Dev] Synchronizing Mirror Sites
Shane Hathaway
shane at zope.com
Mon Jul 21 15:04:20 EDT 2003
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