Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用JMS而不是使用REST模板来交换信息有什么好处?_Java_Rest_Jms - Fatal编程技术网

Java 使用JMS而不是使用REST模板来交换信息有什么好处?

Java 使用JMS而不是使用REST模板来交换信息有什么好处?,java,rest,jms,Java,Rest,Jms,据我所知,我们使用jms在两个或多个系统之间交换信息,我们也可以使用Rest模板交换信息,但我们使用jms交换信息,我想知道使用jms而不是使用REST模板有哪些优势。以下是jms带来的几个优势 JMS允许在保证交付的情况下触发和忘记消息 JMS对于异步请求-应答消息传递非常有用。使用它们异步处理长时间运行的操作。然而,基于HTTP的模型是同步的,并导致快速失败的方法 发布/订阅是将发送者与许多接收者分离的另一种好技术。这是一个灵活的体系结构,因为用户可以根据需要来来去去 在异构环境中集成不同的

据我所知,我们使用jms在两个或多个系统之间交换信息,我们也可以使用Rest模板交换信息,但我们使用jms交换信息,我想知道使用jms而不是使用REST模板有哪些优势。

以下是
jms
带来的几个优势

  • JMS允许在保证交付的情况下触发和忘记消息
  • JMS对于
    异步
    请求-应答消息传递非常有用。使用它们异步处理长时间运行的操作。然而,基于HTTP的模型是同步的,并导致快速失败的方法
  • 发布/订阅是将发送者与许多接收者分离的另一种好技术。这是一个灵活的体系结构,因为用户可以根据需要来来去去
  • 在异构环境中集成不同的系统。任何一种互不通信的不同系统都是[基于消息的]集成应用程序的理想选择
  • 由于上述优势,JMS在企业集成中被大量使用。

    • 异步通信:应用程序需要通知另一个事件已发生,而无需等待响应
    • 可靠性。确保一次且仅一次消息传递。使用DB方法,您必须“重新发明轮子”,特别是当您有多个客户在阅读消息时
    • 松耦合。并非所有系统都可以使用数据库进行通信。因此,JMS非常适合在异构环境中使用,这些环境中的解耦系统可以跨系统边界进行通信