【问题标题】:BizTalk PerformanceBizTalk 性能
【发布时间】:2021-09-29 12:24:07
【问题描述】:

我们有一个简单的 Biztalk 应用程序,我们从系统收到一些通知到我们的接收端口,然后我们使用这些系统提供的 API 将它们发送到不同的系统,这些系统使用 WCF-Webhttp 静态单向发送端口。这工作得很好,但我们观察到很少有系统需要更多时间来发送响应,因此许多发送端口运行实例将运行,并且由于我们收到大量通知,Biztalk 会变慢。

有什么方法可以让我们制定一个逻辑来延迟处理并在减少负载时通过发送端口发送它们。或者有什么办法可以提高这类场景的性能

【问题讨论】:

    标签: c# biztalk


    【解决方案1】:

    你应该弄清楚你正在调用的API可以处理多少并发连接数,然后按照Optimizations for BizTalk Server配置maxconnection参数。如果在 BTSConfig 中没有设置默认的 maxconnection 参数,那么默认值为 2,这可能会导致您的积压。

    如果其他系统仅限于几个连接并且无法处理吞吐量,那么您需要限制处理通知的速率。通过减慢摄取(轮询速度等),或者如果您无法控制通知的速度,则通过将通知插入表中,然后您可以控制从那里处理它们的速度甚至输出峰值负载。

    另一个有时有效的技巧是将发送端口设置为有序交付,这意味着它将一次处理一个。这适用于接收系统无法处理多个连接的情况。

    【讨论】:

    • 您提到了将通知存储在表中并稍后处理,我们可以使用 Azure 事件中心并根据需要从事件中心加载。对此有任何想法\经验。
    • @techresearch 我没有尝试过,但如果您使用的是 BizTalk 2020 或 BizTalk 2016 和 Feature Pack 2 或更高版本,那应该是可能的。如果您仍然使用 Azure,您不能在那里进行所有处理吗?您是否有理由需要使用 BizTalk?
    猜你喜欢
    • 2011-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-06
    • 1970-01-01
    • 2020-10-13
    • 2018-04-27
    相关资源
    最近更新 更多