CouchDB Day NYC 2017: Replication

Post on 03-Mar-2017

47 views 0 download

Transcript of CouchDB Day NYC 2017: Replication

Lab: Replication (30 minutes)

Bradley Holt, Developer AdvocateThursday, February 9, 2017

CouchDB Developer Day

@BradleyHolt

Peer-to-Peer Replication

@BradleyHolt

Cloudant SyncCouchDB PouchDB

CouchDB Replication Protocol

CouchDB

http-console

$ npm install http-console -g$ http-console 127.0.0.1:5984

@BradleyHolthttps://github.com/cloudhead/http-console

http-console

$ npm install http-console -g$ http-console 127.0.0.1:5984> http-console 0.6.3> Welcome, enter .help if you're lost.> Connecting to 127.0.0.1 on port 5984.

@BradleyHolthttps://github.com/cloudhead/http-console

Connecting to CouchDB 2.0

$ http-console root:passw0rd@127.0.0.1:5984 --json

@BradleyHolt

Connecting to CouchDB 2.0

$ http-console root:passw0rd@127.0.0.1:5984 --json> http-console 0.6.3> Welcome, enter .help if you're lost.> Connecting to 127.0.0.1 on port 5984.

@BradleyHolt

Connecting to IBM Cloudant

$ http-console https://bradley-holt:passw0rd@bradley-holt.cloudant.com --json

@BradleyHolt

Connecting to IBM Cloudant

$ http-console https://bradley-holt:passw0rd@bradley-holt.cloudant.com --json> http-console 0.6.3> Welcome, enter .help if you're lost.> Connecting to bradley-holt.cloudant.com on port 443.

@BradleyHolt

Replication

/>

@BradleyHolt

Replication

/> POST /_replicate

@BradleyHolt

Replication

/> POST /_replicate...

@BradleyHolt

Replication

/> POST /_replicate... { "create_target": true, "source": "https://bradley-holt.cloudant.com/kittens", "target": "kittens" }

@BradleyHolt

Replication

/> POST /_replicate... { "create_target": true, "source": "https://bradley-holt.cloudant.com/kittens", "target": "kittens" }HTTP/1.1 200 OKContent-Type: application/json

{ ok: true, session_id: '9f7bd286a0001ece5bf0bf65dd83c5ab', source_last_seq: '5-g1AAAAFDeJzLYWBgYMlgTmGQT0lKzi9KdUhJMtVLykxPyilN1UvOyS9NScwr0ctLLckBKmRKZEiy____f1YiA6oWQ9xakhyAZFI9SFcGcyJzLpDHbplmZmxkaULYBKIdlscCJBkagBTQov2kuA-i8wBEJ9iNTGA3mhoampmnGBA2JQsA1LtoyA', …}

@BradleyHolt

Try It On Your Own

1. Create database test_1

2. Create database test_2

3. Set up continuous replication from the test_1 database to the test_2 database

4. Create a document in the test_1 database

5. Confirm that the document has been replicated to the test_2 database

6. Delete the test_1 and the test_2 databases

@BradleyHolt

Lab: ReplicationCouchDB Developer Day

@BradleyHolt