消息系统设计

时间:2011-06-29 18:21:37

标签: interop soa messaging amqp

我正在寻找一种方式来发送请求并接收来自另一方的回电。

唯一的问题是我们现在不知道如何在接收器端设计/部署它。

我们确实已经定义并同意了基于文本/ JSON的消息。

看看RabbitMQ和其他人,但每个人都需要一台需要维护的服务器。

谢谢,

2 个答案:

答案 0 :(得分:1)

@ user821692:您不仅要同意消息格式,还要同意目的地/传输协议。对于例如如果两个通信方都可以访问物理上位于任何地方的相同队列,那么它们可以传送预定义的消息。您还可以查看通过HTTP发送消息..

答案 1 :(得分:1)

RabbitMQ非常容易维护。您将使用两个队列,一个用于请求,另一个用于回复。使用AMQP correlation_id标头标记请求和回复,以便在收到回复消息时,可以将其与原始请求进行匹配。

但是,如果经纪人不适合您,请使用ZeroMQ。它是一个可用于十几种语言的客户端库,它在套接字之上强制实施消息传递模式。这意味着您的应用程序不必执行所有低级套接字管理。而是将套接字声明为REQ / REP,而ZeroMQ则处理所有其余的套接字。您只需以您想要的任何格式发送消息,然后您就会收到消息。

我使用ZeroMQ使用REQ / REP在Python中实现memcache样式应用程序。