单向MEP和请求 - 响应MEP之间有什么区别?

时间:2016-08-26 09:26:53

标签: jboss soa eai jboss-esb

JBossESB Programmer’s manual中,它被称为:

  

“JBossESB中客户端和服务之间的所有交互都通过消息交换发生。为了鼓励松散耦合,我们建议基于单向消息的消息交换模式,即请求和响应是独立消息,在必要时由基础结构或应用程序进行关联。“

但如果请求和响应是单向MEP的独立消息,那么它在请求 - 响应MEP之间有什么区别?

使用它们的实际优势是什么?

1 个答案:

答案 0 :(得分:0)

请求-响应

  • 又称为同步交互,回叫。
  • A向B发送请求并等待。
  • B将处理请求并发送响应。
  • A得到响应并继续前进。

单向

  • 又名异步交互,一劳永逸。
  • A向B发送请求/消息,但不等待响应。它继续做其他事情。
  • B将处理请求/消息并完成。

异步同步

  • 您引用的段落暗示了这种模式...
  • 如果A-to-B使用单向,如果需要将处理请求/消息的结果传达回A,该怎么办?
  • 一种选择是使用异步同步模式:
  • A向B发送单向请求/消息。该消息通常包含关联标识符。继续做其他事情。
  • B将处理请求/消息。
  • 处理完成后,B(或在处理中调用的其他组件)将向处理方发送一条独立的单向消息,并返回给A。
  • 第二条消息的发送时间可能是原始A-to-B请求/消息发送后的毫秒,分钟,几小时。但是它包含相同的相关标识符。
  • 第二条消息返回到A或其他在原始消息中已预先配置或指示的回调端点或队列。
  • Hohpe和Woolf将此模式称为“请求-答复”。但是我认为这个名称有些令人困惑(太接近“请求-响应”)。