【问题标题】:difference between AMQP, MOM, JMS and Message broker?AMQP、MOM、JMS 和消息代理之间的区别?
【发布时间】:2021-09-11 17:17:33
【问题描述】:

我对以下术语感到困惑

Message broker:它是一个应用程序,它有一个集中的地方来保存用于传输/路由的消息。

AMQP:它是一个协议(应用程序),基本上由消息代理应用程序实现。

MOM:它是一个客户端应用程序,用于接收和发送消息给不同的应用程序。

JMS: 它也是从 MOM 扩展而来的客户端级应用程序。

如果我的理解有误,请纠正。

【问题讨论】:

    标签: java activemq messaging messagebroker mom


    【解决方案1】:

    MOM 通常是用于描述架构和整体设计的高级概念。面向消息的中间件——非常类似于 EDA——事件驱动架构。

    Message Broker:正确,这是从生产者接收消息并将其分发给消费者的过程——换句话说,代理应用程序之间的消息。

    AMQP:是一种有线协议,由代理和客户端用于就如何在彼此之间发送消息达成一致并支持各种功能——时间戳、到期、事务等。

    JMS:是供应用程序和代理遵守的 Java API 标准。它是一个瘦 API 规范,不是一个有线协议。 JMS 兼容的代理,例如 ActiveMQ、IBM MQ 等,实现了支持 JMS API 规范的有线协议。

    把它们放在一起:

    组织可以采用面向消息的中间件 (MOM) 以便在运行时解耦应用程序。这种架构将通过使用兼容 JMS 的消息代理和兼容 JMS 的客户端来实现,这些客户端使用 AMQP 有线协议在后台进行通信。

    【讨论】:

    • 所以 MOM 也是一种 API,用于在两个应用程序之间交换消息?这是正确的吗 ?您能分享更多关于 MOM 的信息以及可以使用它的任何示例吗?
    • MOM 是一个高级通用术语,而不是特定的 API。 FWIW——“事件驱动架构”(又名 EDA)是当今用来代替 MOM 的更现代的术语。参考:en.wikipedia.org/wiki/Message-oriented_middleware
    猜你喜欢
    • 2013-11-05
    • 2018-11-15
    • 2014-12-21
    • 2018-10-08
    • 2013-01-10
    • 1970-01-01
    • 2013-06-25
    • 2014-12-01
    • 2011-09-28
    相关资源
    最近更新 更多