TNonblockingServer two packets instead of one
---------------------------------------------

                 Key: THRIFT-45
                 URL: https://issues.apache.org/jira/browse/THRIFT-45
             Project: Thrift
          Issue Type: Improvement
          Components: Library (C++)
            Reporter: Alexander Shigin
            Priority: Minor


TNonblockingServer creates two packets for each result: size of result and 
result data. 

On a default FreeBSD (both 6.3 and 7.0) installation it causes a 100 ms 
slowdown (it tries to pack an ACK packet with a next packet, but the program 
waits for new input).
 
Attached patch merges these two packets into a single packet.

Here is the result. The svn version serves on 9090 port and the patched version 
on 9091:
$ python qx.py 9090 > /dev/null
time is 0.104
$ python qx.py 9091 > /dev/null
time is 0.006

I think high loaded thrift server can get some speed up even if it works on 
linux.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to