thrift-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Utku Can Top├žu <u...@topcu.gen.tr>
Subject Java Server Does Not Close Sockets immediately for oneway methods
Date Thu, 11 Feb 2010 17:23:43 GMT
While experimenting with the oneway (asynchronous) service calls to a Java
Service, we've faced a serious connection overload.
Currently we're using TBufferedTransport together with TThreadPoolServer on
the Server side.
Diving deep into the Java Thrift Libraries, auto-generated Java classes and
debugging the code, we've seen that the oneway void methods on the Java
Server side does not close the "TSocket"s that are related to the methods in
question.

Is this a design decision? Should we treat this as a bug?

Our current solution to this problem is employing a ThreadPoolExecutor for
each oneway method, we immediately transform the asynchronous requests into
Runnables and place them in the thread pool and return from the method.

I think a similar approach should be implemented in the Thrift Java
libraries.

What do you think on this issue?

Best Regards,
Utku

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message