我需要一个消息服务作为我的客户端和服务器之间的代理,它可以满足以下要求:
- 与客户同步工作
- 异步发送请求并从服务器获取答案(就像将请求作为消息发送并将答案作为另一条消息发送一样)。
- 因此它应该记住请求 ID,以便知道将答案发送给哪个客户端。
- 在向服务器发送请求时,在服务器之间进行负载平衡,
有没有什么软件/硬件可以实现这个功能?我更喜欢开源软件。
答案1
你可以使用 RabbitMQ主题交流路由是根据消费者标签或其他消息变量完成的。
您不希望“队列记住请求 ID”,这都是应用程序的消费者/发布者的逻辑的一部分。
代理就是代理,队列就应该是队列。真正巧妙的地方在于你对队列的使用。