As Adam mentioned, 1.2.0 is coming with the freedom to choose the options for the opened socket (the default options may not provide the best choice for your needs). To optimize the socket options for your needs, the possible options are given here:
http://www.erlang.org/doc/man/inet.html#setopts-2 I know that this feature may confuse some users, but once you start to feel them, one can see the beauty of this feature. I do like this new feature and I am just a regular user. CGS On Fri, May 18, 2012 at 11:07 PM, Adam Kocoloski <[email protected]>wrote: > It's a throughput versus latency thing. Disabling it is a pretty common > thing to do in modern networks. > > Adam > > On May 18, 2012, at 4:57 PM, Johannes Schneider wrote: > > > -----BEGIN PGP SIGNED MESSAGE----- > > Hash: SHA1 > > > > Thanks for the hint. Will try it out. > > But I am sure, there is a good reason for enabling that algorithm? > > > > > > On 18.05.2012 22:27, Adam Kocoloski wrote: > >> 40ms indicates Nagle's algorithm is kicking in and trying to reduce > >> the number of packets sent over the wire. Try setting the > >> following in the .ini configuration: > >> > >> socket_options = [{nodelay, true}] > >> > >> I believe that was the default in 1.0 and has changed since then. > >> Cheers, Adam > >> > >> On May 18, 2012, at 2:59 PM, Johannes Schneider wrote: > >> > >> Hi guys, > >> > >> > >> I am using Ubuntu 12.04 (x86_64) with the default CouchDB > >> installation. And I have created some very small tests to check the > >> performance. > >> > >> It is just one simple "get". > >> > >> > >> With 1.0.1 it used to take about 1 or 2 milli seconds. Since the > >> upgrade the same GET takes about 40 millis. I am quite sure that > >> there is some type of misconfiguration... Anybody has a hint for > >> me? Are there any special configuration options that changed from > >> 1.0.1 to 1.2.0 (nothing found in release notes)? Or did Canonical > >> some magic? > >> > >> > >> > >> Debug output in couch.log: [Fri, 18 May 2012 18:55:35 GMT] [debug] > >> [<0.400.0>] 'GET' > >> > /couch_unit_test_1337367299363_55042/_design/all/_view/byTypeAndId?startkey=%5B%22lens%22%5D&include_docs=true&endkey=%5B%22lens%22,%7B%7D%5D > >> > >> > > {1, > >> > >> > >> 1} from "127.0.0.1" Headers: [{'Accept',"text/html, image/gif, > >> image/jpeg, *; q=.2, */*; q=.2"}, {'Connection',"keep-alive"}, > >> {'Host',"localhost:5984"}, {'User-Agent',"Java/1.6.0_26"}] [Fri, 18 > >> May 2012 18:55:35 GMT] [debug] [<0.400.0>] OAuth Params: > >> [{"startkey","[\"lens\"]"}, {"include_docs","true"}, > >> {"endkey","[\"lens\",{}]"}] [Fri, 18 May 2012 18:55:35 GMT] [debug] > >> [<0.400.0>] request_group {Pid, Seq} {<0.402.0>,5} [Fri, 18 May > >> 2012 18:55:35 GMT] [info] [<0.400.0>] 127.0.0.1 - - GET > >> > /couch_unit_test_1337367299363_55042/_design/all/_view/byTypeAndId?startkey=%5B%22lens%22%5D&include_docs=true&endkey=%5B%22lens%22,%7B%7D%5D > >> > >> > > 200 > >> > >> > >> The map function. ------------------------------ function( doc ) { > >> var type = doc['@type']; var id = doc['_id']; > >> > >> if ( type == null || id == null ) { return } > >> > >> emit( [type, id] ); } ------------------------------ > >> > >> > >> No other documents are available (returns "total_rows":0 > >> > >> > >> > >> Thanks, > >> > >> Johannes > >> > >> > > > > - -- > > Johannes Schneider - blog.cedarsoft.com > > -----BEGIN PGP SIGNATURE----- > > Version: GnuPG v1.4.11 (GNU/Linux) > > > > iQEcBAEBAgAGBQJPtre8AAoJEAytD9R7Qv6dcKEH/RhHUVBbyJsUSUK5vx4eD5sR > > GBIQrvvAHqLiQ9eQ8jH5jucvF3uhX8dBHEID19IbGDmpGbzk+LQtNtkKsaC5844J > > pOzJDC1ObvYwtQFaPeUX3mNkV7nkKwrIoB5x1zB1/4utQmlPMkxCrv4XlJ79DcPx > > 1m59DItFzCTSLUxzG1r1/g3u93xAsxPpBMp0IXFseuXOmuiO5v64u7hXriN3eSWT > > 6PVhz88AzJTZlYH+10uMuMPbaxcosgNOtbVJDPGXXysziuHEe4gpJB3fQwbs1uow > > cmVdhB2Ln8I/MJzuGaKwtBncLPnafPSdYwlhsOBEwSVbc5tEDw2wkLKwHBtQsVk= > > =b6eZ > > -----END PGP SIGNATURE----- > >
