couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jan Lehnardt <...@apache.org>
Subject Re: CouchDB 2.0 performance issue
Date Fri, 04 Mar 2016 17:05:18 GMT

> On 04 Mar 2016, at 16:52, Peyton Vaughn <pvaughn@6fusion.com> wrote:
> 
> Thanks for the help! Turning delayed_commits back on did indeed make a big
> difference. I had run across that setting already in the docs, but just
> assumed it was set to false in 1.6 as well (I see in the docs sometimes
> there are annotations like "Changed in version 1.2" - this might be a good
> candidate for a similar footnote :)
> 
> One follow-up question: will couch attempt to flush the write buffer on
> receiving a TERM signal? (which is a typical way to shutdown in a docker
> environment)

It will not :)

Best
Jan
--

> 
> On Thu, Mar 3, 2016 at 4:30 PM, Alexander Shorin <kxepal@gmail.com> wrote:
> 
>> Hi,
>> 
>> The main reason is that 1.6 has couchdb/delayed_commits[1] = true by
>> default while 2.0 has it false instead to safe you from fun of
>> distributed issues. No delayed commits means that every write
>> operation hits the disk with fsync() call without any intermediate
>> buffering which delayed commits create (for 5 seconds). Add here a
>> short overhead for cluster wide communications and here is your
>> difference.
>> 
>> P.S. Yes, that's annoying drawback, but so far there is nothing to do
>> with it, except setup real cluster and balance the load over it.
>> 
>> [1]:
>> http://docs.couchdb.org/en/1.6.1/config/couchdb.html#couchdb/delayed_commits
>> --
>> ,,,^..^,,,
>> 
>> 
>> On Fri, Mar 4, 2016 at 12:24 AM, Peyton Vaughn <pvaughn@6fusion.com>
>> wrote:
>>> Hello,
>>> 
>>> I've been using 1.6 for several months now, and wanted to try out 2.0.
>> But
>>> from the start, I'm experiencing much slower performance with 2.0. In
>> both
>>> cases I'm using the docker images (klaemo/couchdb:1.6 and
>>> klaemo/couchdb:2.0-dev), with a small program that pushes a few thousand
>>> documents to benchmark. The same program takes significantly longer to
>>> finish when I push to the couch 2.0 instance (~45 seconds vs several
>>> minutes).
>>> 
>>> I run the containers on the same 4-cpu virtual machine (not at the same
>>> time of course). I run the 2.0 instance as instructed on docker hub:
>>> docker run -p 5984:5984  --rm klaemo/couchdb:2.0-dev
>>> --with-admin-party-please   --with-haproxy -n 1
>>> 
>>> The difference in performance is big enough that I figure it must only be
>>> me, but I don't know what I might be doing wrong.
>>> 
>>> Any insight would be greatly appreciated!
>>> 
>>> Peyton Vaughn
>> 


Mime
View raw message