[ https://issues.apache.org/jira/browse/THRIFT-1894?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Randy Abernethy updated THRIFT-1894: ------------------------------------ Priority: Trivial (was: Major) > Thrift multi-threaded async Java Server using Java 7 AsynchronousChannelGroup > ----------------------------------------------------------------------------- > > Key: THRIFT-1894 > URL: https://issues.apache.org/jira/browse/THRIFT-1894 > Project: Thrift > Issue Type: New Feature > Components: Java - Library > Affects Versions: 1.0 > Environment: Windows/Linux/OS X > Reporter: Randy Abernethy > Priority: Trivial > Fix For: 1.0 > > Attachments: 0001-Java-TAsyncThreadPoolServer-and-support-files.patch > > > This is a Java async thread pool server which my shop would like to > contribute to 1.0. > This server creates a single thread pool to execute all client requests. Any > thread may be dispatched to service any request on any connection. Async > operations use direct ByteBuffers, allowing the underlying system to write > directly to the server buffer in some JVMs. No memory is typically copied by > the server, the Protocol reads directly from the I/O buffer. The HotSpot JVM > implements AsynchronousChannelGroups with I/O completion ports on Windows, > event port on Solaris, and epoll on Linux. The IOCP implementation makes a > noticeable difference in some scale out scenarios on Windows. Have found this > server to be good for large client counts and TThreadPoolServer to be a > little better with lower client counts (our experience only of course). > In the tar: > Server: TAsyncThreadPoolServer.java > Channel: TChannelManager.java > Transport: TFramedChannelTransport.java > Test: TestAsyncThreadPoolServer.java > Requires Java 7. > Happy to field questions and turn patches if needed. -- This message was sent by Atlassian JIRA (v6.1.5#6160)