[
https://issues.apache.org/jira/browse/THRIFT-45?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Alexander Shigin updated THRIFT-45:
-----------------------------------
Attachment: thrift-svn-nonblocking-server-one-packet-2.diff
I've got no objection, it's great idea to comment the fake write.
And it may be a good idea to make frameSize_ a local variable.
> 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
> Attachments: nonblocking.diff,
> thrift-svn-nonblocking-server-one-packet-2.diff,
> thrift-svn-nonblocking-server-one-packet.diff
>
>
> 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.