代码之家  ›  专栏  ›  技术社区  ›  Damien

企业应用程序之间的JMS

  •  1
  • Damien  · 技术社区  · 14 年前

    简而言之,系统1向队列发送消息。 Systems2接收该消息,在后台进行大约30分钟的整个处理,然后将消息发送回队列,供System1接收。

    如果我们有两个队列,那么System1将写入queue1,System2将接收。

    哪种方法最好? 如果有人知道这些方法的任何局限性或任何更好的解决方案,请与我们分享

    达米安

    2 回复  |  直到 14 年前
        1
  •  1
  •   Jé Queue    14 年前

    您可以在队列中使用选择器,但我建议您保持它的简单性,并按照您的描述使用2个队列。我更喜欢将消息类型分为不同的队列,我想您会发现这也是最容易管理的。

    队列在很大程度上只是一个消息桶的逻辑名称,与单个队列中的所有消息相比,几乎没有(如果有)更多的开销。

        2
  •  1
  •   T.Rob    14 年前

    具体来说,服务器监听已知队列。任何想要驱动该服务的应用程序都会向知名队列发送消息。邮件包含对目标的答复地址,服务器将答复发送到该目标。通过这种方式,服务器应用程序可以处理来自网络上任何位置的许多相对匿名(或身份验证(如果需要的话))客户端的请求。

    此方法还支持客户端和服务器队列不在同一消息引擎上。它支持在FIFO模式下访问队列,这应该更高效。它比单个队列更好地处理快速生产者、慢速消费者的典型异步消息传递情况。它支持动态回复目的地。它允许应用程序彼此独立地重新定位。如果你所拥有的是真正的没有客户机-服务器模式元素的对等模式,那么这个架构也支持这一点。