couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Owen Marshall <omarsh...@facilityone.com>
Subject Re: Peer-to-Peer Replication
Date Wed, 06 Apr 2011 18:26:35 GMT
On 04/06/2011 02:13 PM, Zdravko Gligic wrote:

> (1) How would two CouchDB go about discovering and meeting each other?
>  Would this not require a central server (similar to IRC) and are
> there any hosted solutions?

Two instances don't discover -- they depend on *you* telling them to
replicate.

To accomplish this you post a message to /_replicate with a source and a
target:

POST /_replicate HTTP/1.1
{"source":"http://foo.bar/database","target":"database"}

Once you've triggered a replication, CouchDB takes over and figures out
the differences between the DB revisions on both instances.

Once it is done, it is done -- unless you pass continuous: true. That
sets up continuous replication, where the target will watch the source's
_changes API and replicate new docs over as needed.

For more, see http://guide.couchdb.org/draft/replication.html. It's a
great guide.

> (2) Once at least two CouchDB's discover and meet each other, is it
> just their URLs (domain name or IP based) that are needed? What about
> routers and/or firewalls?

Yep. As long as the instances can reach each other, everything should
just work (TM).

If you want to look at some other offerings, BigCouch
(https://github.com/cloudant/bigcouch) is one that I quite like. But IMO
you should get comfortable with what CouchDB provides before you go
elsewhere.

Best,

-- 
Owen Marshall
FacilityONE
omarshall@facilityone.com | (502) 805-2126


Mime
View raw message