Your browser doesn't support the features required by impress.js, so you are presented with a simplified version of this presentation.

For the best experience please use the latest Chrome or Safari browser. Firefox 10 (to be released soon) will also handle it.

A Production CouchApp
and a Shitload of Replications

Gregor Martynus
@gr2m @minutes_io

Gregor Martynus

Developer Designer Business Buzzer somethin' in between

♥ building products

♥ solving real life issues

♥ tools that help me do that
simplest meeting tool since pen & paper.

  1. immediate saving, automated synchronization
  2. works on & offline
  3. It just works™

engine room

started with

migrated to

and ♥CoffeeScript♥


Introduction of Accounts
Login with email & password

Accessing data across devices
=> Synchronization.

The it just works™- kind of
live Synchronization

can do it.

is made for it.


(teething) troubles

  1. Replications
  2. Replications
  3. Replications
  4. Replications
  1. OS open files
  2. open databases
  3. ETS tables
  4. Erlang process limit


no Couch/Replication problems
since 1 month: ♥ Iris Couch is a couchApp with a nodeJS proxy


  • local data, no internet connection needed.
  • Background Synchronization (decoupled, _changes & _bulk_docs)

PROXY: node.js

  • User sessions
  • Caching static assets
  • creating databases & replications


  • database per user
  • continuous replications userDB => masterDB
  • database per shared meeting
  • continuous replications userDB <=> meetingDB <=> userDB
  • business logic / validations
  • static assets


  • 1898 user databases
  • 1470 meeting databases
  • 5102 replications


Use a spacebar or arrow keys to navigate