ESB的不同客户端运行模式之间有什么区别

时间:2013-12-02 06:20:04

标签: wso2 esb

我正在[1]运行一些ESB样本。 [2]说明了不同的客户端运行模式,如智能客户端模式,网关/哑客户端模式,代理客户端模式等。 这些客户端模式之间有什么区别?

  1. http://docs.wso2.org/display/ESB470/Samples
  2. http://docs.wso2.org/display/ESB470/ESB+Samples+Setup#ESBSamplesSetup-StockQuoteClient

1 个答案:

答案 0 :(得分:2)

运行stockquote客户端的三种模式可以解释如下。

智能客户端模式:

在此模式下,您可以指定客户端在将请求发送到最终结束点之前调用的ESB代理。当您需要在ESB中完成一些中介时,您将使用它,然后您希望将请求发送到您指定的终点。

例如,

ant stockquote -Daddurl=http://localhost:9000/services/SimpleStockQuoteService -Dtrpurl=http://localhost:8280/services/StockQuoteProxy1 -Dsymbol=SUN

trpurl:这是客户端调用的ESB代理,需要在调用ulimate端点之前进行一些调解(addurl)

addurl:这是ESB在进行调解后调用的内容。

网关/哑客户端模式:

通过这种方式,客户端不知道在ESB内部进行调解后最终请求将在何处传递,因此ESB可以 在ESB代理中提到的端点上的动态决策。您可以使用“端点”标记在您自己的逻辑中按照您的意愿定义ESB中的端点。当您希望ESB逻辑根据ESB代理中的逻辑决定最终消息传递点时,您将使用此方法。

ant stockquote -Dtrpurl=http://localhost:8280/services/StockQuoteProxy1 -Dsymbol=SUN

代理客户端模式:

运行此方案时,您将看到与上一个示例完全相同的行为。 但是,这次差异发生在客户端,因为它将消息发送到WS-Addressing “To”地址为http://:9000 / services / SimpleStockQuoteService,但传输将ESB指定为HTTP代理。因此,当您希望ESB作为代理传递工作并且不需要任何中介时,您将使用此方法,只需将请求转发到WS-Addressing中“To”地址中的给定端点。

ant stockquote -Dprxurl=http://localhost:8280/  -Daddurl=http://localhost:9000/services/SimpleStockQuoteService 

注意:addurl在这里是可选的,在此处添加,因此客户端会将其添加到WS-Addressing“To”标记