【问题标题】:Preferred Communication method between systems using Biztalk使用 Biztalk 的系统之间的首选通信方法
【发布时间】:2014-04-08 18:36:10
【问题描述】:

我们有 2 个系统,我们希望在它们之间交换消息。我目前正在设计应用程序,并且有两个选择。

  1. 系统 1 将消息推送到中间位置(FTP 或 SQS),系统 2(运行 BizTalk)从该位置读取消息并进行处理。

  2. 将架构/编排公开为系统 2 中的 Web 服务,供系统 1 使用。

任何建议哪种方法在错误处理和可扩展性方面会更好。

【问题讨论】:

    标签: web-services schema biztalk communication biztalk-orchestrations


    【解决方案1】:

    如果可以,请始终通过排队系统采用异步方法。这样,您的应用程序可以独立于后端运行。然后我会建议 Windows Server 的服务总线(更重的安装)、Windows Azure 服务总线(作为服务,在云中,需要互联网连接)或 MSMQ(包括存储和转发!)。这些提供了事务行为,可以被认为是非常可靠的。其他轻量级的选择确实是通过文件交换或 FTP。

    Web 服务或 REST 连接也很容易设置,但是您有同步行为,这有其好处:

    • 当您的消息由 BizTalk 传递时,您可以获得“实时”回复
    • 易于设置和监控

    因此,大多数情况下,答案是“视情况而定”。

    【讨论】:

    • 感谢 Sam 和boatseller,我完全理解这取决于但只是在寻找更好的做法,我只是想权衡我的选择,就像你说的那样 Http/Soap 是同步的,而拥有排队系统会是异步的,所以考虑其中一些点,比如有一个soap选项将是紧密耦合的,并且api必须始终可用。除了这些,我们还有这些方法的优点和缺点。
    【解决方案2】:

    对于您的特定应用,只有一种“最佳方式”,并且需要考虑许多条件。

    最简单的方法是在文件系统上共享位置(操作系统文件系统与 FTP 无关紧要),尤其是在顺序不重要的情况下。

    如果必须保持订单以保证交付要求,那么消息队列是一个不错的选择,MSMQ/WMQ。

    当然,HTTP/SOAP 始终是一种选择。

    实际上,这些方法中的任何一种都会在那里收到消息,因此您必须考虑每种协议的好处。

    【讨论】:

      猜你喜欢
      • 2013-10-02
      • 1970-01-01
      • 2013-08-29
      • 2017-09-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-27
      相关资源
      最近更新 更多