Turned on the TCP_NODELAY socket option (disables Nagle's algorithm)
authorIan Smith <ian.smith@mylookout.com>
Thu, 12 Sep 2013 21:12:58 +0000 (14:12 -0700)
committerIan Smith <ian.smith@mylookout.com>
Mon, 23 Sep 2013 18:06:34 +0000 (11:06 -0700)
commit8b7bd550b36cdc69c81c3537f2df37c2972e6133
treed5d58575438b75acf3dad9f6b910c9253066445c
parent0ff7669056665f9f9c8fdcdb869de46d567dfafe
Turned on the TCP_NODELAY socket option (disables Nagle's algorithm)

Tests show an 8-20 fold improvement in throughput. Messages under 1500 total
bytes benefit the most. Even with messages of 10K in size there's still a 30%
improvement in throughput; that's a lot. Tested with JRuby 1.7.3 and Ruby EE
1.9.3 on RHEL 6.1 against ActiveMQ 5.8.0 (also running on RHEL 6.1).

Default is true, but can TCP_NODELAY can be turned off by putting :tcp_nodelay
=> false in the parameters hash.

(ppaul/6540400, #8)
README.rdoc
lib/connection/netio.rb
lib/connection/utils.rb