You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@thrift.apache.org by ZHOU Xiaobo <xb...@qq.com> on 2011/01/04 17:38:10 UTC
About non-blocking Client
Hi everyone:
I encounter a situation that when a non-blocking server(say Server_A) processes a request(say Req_1),
it sends several(say 3) requests to the server(s) behind it. Server_A constructs the response
after all the 3 responses from the behind servers arrives.
So my question is: how can I handle the 3 requests/responses in a non-blocking way?
I guest one approach is that I define these 3 requests 'oneway' services of the behind server(s)
and the 3 responses 'oneway' services of Sever_A. (Does it work?)
But I think it's a tricky way because the responses (from the behind servers) come from a different
connection( e.x. TCP).
ICE( Internet Communication Engine) can store the requests to a container( ex. std::vector), when
one response comes, the callback functions can traverse the container to find the corresponding
request.
Does Thrift support this policy?
thanks a lot�