Need a thread pool server that is fair in terms of invocations, not sockets
---------------------------------------------------------------------------

                 Key: THRIFT-5
                 URL: https://issues.apache.org/jira/browse/THRIFT-5
             Project: Thrift
          Issue Type: New Feature
          Components: Library (Java)
            Reporter: Bryan Duxbury


The current TThreadPoolServer in the Java libraries is suboptimal. If you 
actually limit the upper bound of threads, and you have long-lived clients, and 
you have more clients than you have max allowed threads, then any clients in 
excess of the max number of threads will never be given a time slice to 
execute. 

Conceptually, it seems like the correct behavior here is for the individual 
method invocations to be the items that end up on the thread pool's execution 
queue, not the individual client sockets (as it is now). This would support 
this and other use cases better. 

Perhaps we should do a Half-Sync/Half-Async server to fulfill this goal?

-- 
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