[ https://issues.apache.org/jira/browse/COUCHDB-976?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12967218#action_12967218 ]
Adam Kocoloski commented on COUCHDB-976: ---------------------------------------- Hi Filipe, I can't see gains of the magnitude you describe in this ticket on those graphs. A 100ms improvement in reader response time for small docs? I just don't see it. Nevertheless, the patch is a good idea. > Improve database read and write performance using 2 couch_files > --------------------------------------------------------------- > > Key: COUCHDB-976 > URL: https://issues.apache.org/jira/browse/COUCHDB-976 > Project: CouchDB > Issue Type: Improvement > Reporter: Filipe Manana > Assignee: Filipe Manana > > Right now we use a single couch_file server for both updating a database and > reading from a database. > This is a contention point, as concurrent read/write access to a database > implies having processes waiting for access to the couch_file server. > The following patches add a couch_file server that is used only by the DB > updater process and another couch_file meant to be used by anyone else only > for read operations: > https://github.com/fdmanana/couchdb/compare/updater_dedicated_fd > Some performance measurements: > # updater_fd vs trunk (small docs, 1Kb each) > $ node tests/compare_write_and_read.js --wclients 50 --rclients 200 \ > -name1 updater_fd_small_docs -name2 trunk \ > -url1 http://localhost:5984/ -url2 http://localhost:5985/ \ > --duration 300 > http://graphs.mikeal.couchone.com/#/graph/5c859b3e7d1b9bd0488cfe271104a616 > # updater_fd vs trunk (large docs, 100Kb each) > $ node tests/compare_write_and_read.js --wclients 50 --rclients 200 \ > -name1 updater_fd_large_docs -name2 trunk \ > -url1 http://localhost:5984/ -url2 http://localhost:5985/ \ > --duration 300 --doc large > http://graphs.mikeal.couchone.com/#/graph/5c859b3e7d1b9bd0488cfe271104a7a7 > We can see that both the response time and throughput gets significantly > better for both read and writes. > If no objections I'll commit it to trunk. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.