Puma::IOBuffer is a very simple memory buffer that allows for fast
append without additional object overhead.
Additionally, turns out that IO#write on 1.9.3 is extremely
non-performant because it allows a Hash object on every invocation.
Avoid calling IO#write in a loop on 1.9.3! Use IO#syswrite if you can
(for instance when you don't care about the encoding of the output
(sockets)).
As far as I could tell, the buffer given to the http parser isn't
modified. Because it is not modified, we can use the
RSTRING_NOT_MODIFIED header to ensure that Rubinius hasn't do the extra
work to copy the data back and forth.
* Rename Mongrel to Puma and move files appropriately
* Add HttParser11#body method
* Fix native.rake to not attempt C ext under JRuby
* Mask out all of test_unix_socket.rb under JRuby