Hello all,

I’ve been playing with CouchDB over the last weeks and am running into serious 
problems. My idea was, to have a central database and roughly 1.000 project dbs 
that stem from a filtered local one-way replication from the central db using 
_replicator db. However, triggering 1.000 replications grinds CouchDB to a 
standstill. I read that for each replication Couch spawns a process so that 
approach might not be feasible after all.
I changed my setup now into a node process listening to the changes feed of the 
central database and then manually triggering a one-shot replication to the 
affected project dbs. That seems to work for now.

However, now the clients should listen to the changes feed of their relevant 
project dbs and again CouchDB is thrashing and crashing all over the place. I 
increased "max_dbs_open" to 1.500 and added "+P 10.000” to the Erlang startup 
parameters. ULIMIT on OS X is set to unlimited.

My central database only has 1.000 small documents so I’m a bit scared of what 
will happen if it grows to millions of documents and hundreds of clients 
listening to the changes feeds.

Are there any recommendations on (nr_of_dbs, nr_of_clients, nr_of_replications) 
=> {couch_settings, erlang_settings, system_settings}?
Or should I not even attempt to host Couch myself (I would really like to) and 
directly use Cloudant?

I’m using CouchDB 1.6.1 (installed via homebrew) on OS X 10.11.4

Any help appreciated.

Regards, Alexander

Reply via email to