rocking show-case to get you excited...

52
Rocking show-case to get you excited about

Upload: others

Post on 18-Jul-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

Rocking show-case to get you excited about

Page 2: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture
Page 3: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

pictures of my cats relaxing in the only remaining piece of furniture yet to be used to name a

CouchDB project: bean bag!

Page 4: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

ohai!

Page 5: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture
Page 6: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

$ whoami@dscape

Page 7: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture
Page 8: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

my ambition is school was to hack on CouchDB

Page 9: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture
Page 10: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture
Page 11: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture
Page 12: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

var  db_name  =  'hackaton_'  +  (~~(Math.random()  *  1e9)).toString(36);

var  pouch;

Pouch('idb://'+db_name,  function  (err,  db)  {    pouch=db;});

pouch.put({_id:  '1',  bar:  'baz'});

pouch.get('1',  function  (err,  doc)  {  console.log(doc);  });

Pouch.replicate('idb://'  +  db_name,'http://localhost:2020/foobar2003',  function(err,  changes)  {    console.log('omg  hi!')    console.log('got  changes',  changes);});

github.com/daleharvey/pouchdb

Page 13: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

var  db_name  =  'hackaton_'  +  (~~(Math.random()  *  1e9)).toString(36);

var  pouch;

Pouch('idb://'+db_name,  function  (err,  db)  {    pouch=db;});

pouch.put({_id:  '1',  bar:  'baz'});

pouch.get('1',  function  (err,  doc)  {  console.log(doc);  });

Pouch.replicate('idb://'  +  db_name,'http://localhost:2020/foobar2003',  function(err,  changes)  {    console.log('omg  hi!');    console.log('got  changes',  changes);});

!!111!!!1!!one!!1!

http://git.io/IxpQRg

Page 14: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture
Page 15: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture
Page 16: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture
Page 17: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture
Page 18: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

couchdb <3’s nodejsnodejs <3’s couchdb

Page 19: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture
Page 20: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

peek: ~1k req/s on a package repository

Page 21: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

how does it work?

Page 22: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

DNS!

Client! Proxy A!

Proxy B!

Workhorse 1!

Workhorse 2!

Workhorse 3!

CQS!

State!

foo.iriscouch.com

A

B

C

Database A!

Database B!

Database C!

_changes

Page 23: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture
Page 24: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

var  named  =  require('named');named.createServer(function(req,  res)  {    res.end('1.2.3.4');}).listen(5353,  '127.0.0.1');console.log('Server  running')

github.com/iriscouch/named

Page 25: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

var  named  =  require('named');named.createServer(function(req,  res)  {    res.end('1.2.3.4');}).listen(5353,  '127.0.0.1');console.log('Server  running');

again!11!!!11!

github.com/iriscouch/named

Page 26: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

DNS!

Client! Proxy A!

Proxy B!

Workhorse 1!

Workhorse 2!

Workhorse 3!

CQS!

State!

foo.iriscouch.com

A

B

C

Database A!

Database B!

Database C!

_changes

Page 27: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

the way

Page 28: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

not optimized for retina displays

Page 29: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

open source tools we made/use to help us manage our couches

Page 30: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

github.com/dscape/nano

Page 31: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture
Page 32: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

github.com/cloudhead/cradle

Page 33: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

github.com/nodejitsu/resourceful

Page 34: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

github.com/dscape/futoncli

npm install -g futon

Page 35: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

how to use CouchDB to build your own

open source☁

Page 36: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

load balancers

Page 37: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

github.com/nodejitsu/{haibu, node-http-proxy}

reverse-proxy fully compatible with web-sockets

buzzword

yes, sticky sessions too!

Page 38: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

github.com/nodejitsu/{haibu, node-http-proxy}

wondering about the technology stack?

Page 39: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

we are fast at prototyping with node and built a team around that particular skill

dogmatic?

Page 40: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

whenever requirements change beyond what node can offer we translate our stack to different

frameworks/languages

Page 41: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

but yes, maybe... a little!

Page 42: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

deployment

Page 43: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture
Page 44: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

deep divefun right?

Page 45: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

migrating to CouchDB 1.2.x next weektips are welcome!

Page 46: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

stud for 6984

Page 47: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

_changes feed to provide realtime deployment status for our continuous deployments

Page 48: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

private replica of the public npm registry

Page 49: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

provisioner stores server pool in CouchDB

Page 50: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

private npm for deploying our systemse.g. continuous deployments or our load balancers

Page 51: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

“conductors”

data center N

region N

1

region N

appi

2 2

...are peers that manage data centers

11

2

app3 appi app3

term

coming soon

github.com/nodejitsu/pkgcloud

Page 52: Rocking show-case to get you excited aboutconf.couchdb.org/couchdb-conf-berlin-january-2013/slides/2013-couc… · pictures of my cats relaxing in the only remaining piece of furniture

Dankie Shnorhakalutiun Hvala Blagodariya Hvala Dekuju Tak Kiitos Merci Grazie Grazzi Takk Danke Thank You Dziękuję Obrigado Gracias Asante Tack Teshekur Ederim Shokriya Cam On Kob Kun Kaa Mamnun Arigatou