[rabbitmq-discuss] method-like calls
esteve at sindominio.net
Mon Aug 24 16:46:42 BST 2009
sorry for chiming in so late, last week we released our product (FluidDB)
after two years working on it.
> If you're using Thrift with RabbitMQ, you don't need to use the
> transport at all necessarily -- you can just use Thrift and its
> protocols for serialization, and send the messages over AMQP queues.
> That said, Thrift RPC does have a 'oneway' service method keyword.
> This is used for asynchronous calls. You might want to look into
> txAmqp and txThrift for some ideas if you really want to abstract all
> of your calls into Thrift objects + AMQP messaging. Esteve has done
> an excellent job with both tools.
What we did with Thrift and AMQP is to map this scenario  using Twisted, a
framework for asynchronous programming. The basic idea around txAMQP and
txThrift is to use a Deferred (a future/promise-like structure) to define
asynchronous calls to Thrift, and use AMQP as a transport.
Thrift is cross-language, so if you have a mixed environment, is worth having
a look. You don't need to use its RPC mechanism, you can just use it for
serializing/deserializing your objects and embed them in a Basic.Content
message. However, you'll have to build your own RPC mechanism in that case.
1 - http://www.openamq.org/tutorial:soa
More information about the rabbitmq-discuss