You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@couchdb.apache.org by "Olivier Texier (JIRA)" <ji...@apache.org> on 2015/11/16 09:43:10 UTC

[jira] [Created] (COUCHDB-2884) Performance with PouchDB is not good

Olivier Texier created COUCHDB-2884:
---------------------------------------

             Summary: Performance with PouchDB is not good
                 Key: COUCHDB-2884
                 URL: https://issues.apache.org/jira/browse/COUCHDB-2884
             Project: CouchDB
          Issue Type: Improvement
          Components: Replication
            Reporter: Olivier Texier


I encounter a performance problem on PouchDB / CouchDB database synchronisation.

I have a relatively small database (5000 master docs, each one of this docs having 50 slaves docs).

My use case is :

Each PouchDB starts a replication over documents matching a criteria (value of a member on the master or on the slave doc is equal to some integer, specific to each PouchDB client)

At PouchDB client start, the client has no data, then it initiates a replication in order to be synced with server data.

I tried with replication backed by a server filter function, and with replication backed with a view.

In each case performance is pretty lame : with 50 PouchDB clients, my 4 cpu 16gb ram server dies : sync time becomes exponential and server CPU is at max.

My problem is that my production target is 300 PouchDB clients.

I am pretty new in CouchDB, but such a performance doesn't fit with CouchDB objective. Is 300 PouchDB client an unreasonnable expectation ?

I probably don't approach the problem the right way, if so sorry for my 'newbiness', can someone give me a hint ?

It seems to me that PouchDB listens on _changes, and that is linked to the problem. All is working as if docs were not indexed.

Thanks a lot, sorry to bother you



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)