Hi all,
I am currently evaluating Thrift with a view to replacing the XRL IPC
mechanism in XORP, http://www.xorp.org/.
XORP is the only actively developed open source solution for Internet
multicast routing in the industry. Having said that, PIM is quite a
complex protocol, and in XORP, everything is realized in C++.
One consequence of how XORP has been developed is that all XORP
processes are single threaded. An existing slim class library implements
the common idioms of the Reactor pattern, EventLoop, etc. All XRL calls
are asynchronous, and require the use of event-driven callbacks.
I notice that the C++ client examples for Thrift either assume it's O.K.
to use threads, or use blocking I/O. Can anyone point me at an example
of how to do non-blocking RPC in C++ with Thrift? If not, roughly how
much work is it going to be to add?
I see that non-blocking servers are just fine -- and that there are some
patches floating around to improve that too.
I am excited by Thrift's possibilities, however, need to ensure that it
can fit into our framework O.K.
thanks very much,
BMS
P.S. I am also very interested in Thrift + AMQP in a non-blocking C++
context, the clustering and virtualization case is strong.
- Non-blocking C++ client? Bruce Simpson
-