I am working on Message Bus support for Apache Thrift. Currently I am in the middle of developing RabbitMQ support and then I will be looking into Kafka. I found that in order to receive requests and route replies properly, I need a way to identify where the request came from when sending the reply. Thrift transport (at least in C++) does not have a concept of a transport hint that could carry through the processor for each request. These hints would be entirely opaque and only useful or understandable to the layer that inserted them. They also would not likely be useful to stream based transports, but I believe they are necessary for message-based transports to work properly. There's a bit of an impedance mismatch there, however any use of a message bus really requires framed transport which separates messages anyway.
This is something I will be looking into soon, so if anyone has any thoughts about it please let me know. - Jim
