On Nov 2, 2015, at 1:08 PM, [email protected]<mailto:[email protected]> wrote:
I'm using couchbase lite in a mobile app. Just wondering: • is there any limitation if I create continuous replication to sync data between mobile device and server? • How many concurrent continuous replication can be handled by one couchDB or coubchbase server? There’s not an easy answer to that; it depends on a lot of variables like the server hardware, how busy the database is, etc. The hardest limit is the number of open TCP sockets the server can handle. This is a general problem that connection-oriented protocols run into (IMAP, XMPP, Comet, etc.) — it’s often called the “C10K Problem<https://en.wikipedia.org/wiki/C10k_problem>”. The good news is that Erlang and Go (the languages CouchDB and Sync Gateway are written in) are both good at handling massive I/O concurrency. But you do need lots of Ethernet adapters to support zillions of sockets on one machine! But generally, long before you hit limits like that, you’ll run into CPU, RAM and I/O pressure on the server. Sync Gateway and Couchbase Server support horizontal scaling — you can plug in any number of servers and rig up a load-balancer to distribute requests among them. (CouchDB can do something similar but you have to rig up all of the servers to replicate their databases with each other, and I have doubts about the scalability of that. There’s also a variant called BigCouch which is designed to scale higher.) • If reach the limit, what will happen on mobile side and server side? Most likely the clients will see longer and longer latency before receiving updated documents, then eventually timeouts, then eventually socket errors like connection-refused or connection-dropped. —Jens -- You received this message because you are subscribed to the Google Groups "Couchbase Mobile" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/mobile-couchbase/5CE744F9-ECB0-4DF2-ACF1-1C3D718B53D6%40couchbase.com. For more options, visit https://groups.google.com/d/optout.
