BizTalk 2010确定接收位置的主机节流设置

时间:2015-09-28 15:24:45

标签: biztalk biztalk-2010 throttling receive-location

由于所需的管道组件似乎无法将数据库命中到消息的详细信息,因此我计划使用Host Throttling来限制BizTalk在接收位置处理的文件数量。我希望能够指出应该在Y秒(或任何其他可行的时间跨度)内处理X个消息。有谁知道可以使用哪种限制设置来强制这种行为?

我知道如何设置值,但是我找不到最佳配置。

(注意:其中一个解决方案也可能会调整管道,但它包含无法调整的第三方组件。)

2 个答案:

答案 0 :(得分:1)

How BizTalk Server Implements Host Throttling BizTalk查看

  • 正在使用的内存量(系统范围和主机进程内存)。
  • 正在传递或处理的进程内消息数(出站限制阈值)。
  • 正在使用的线程数。数据库大小,通过所有主机的队列表中的项目数以及假脱机和跟踪表中的项目数来衡量。
  • 并发数据库连接数。
  • 邮件发布率(入站) 和交付或处理(出境)。

限制入站的唯一一个是消息发布率,但是在管道/端口处理完消息之后可能这样做,因此在这种情况下可能没有任何用处,但你必须测试它。

您可能希望在它自己的主机下设置该过程,因此如果它达到限制阈值,它也不会限制其他所有内容。

如果可能,您应该将组件移动到发送端口管道,因为限制发送端口更易于控制。一种方法是将发送端口设置为有序传送,但这可能会导致积压,尤其是在收到暂停的消息时。

答案 1 :(得分:0)

我认为你最直接的方法是编写自定义适配器。不幸的是,开箱即用的文件适配器不直接支持限制/轮询间隔,我不认为已经给出的建议不会直接影响自定义管道处理,如果它通过ADO.NET直接命中数据库(但它不能尝试不好意思。您可以在文件适配器设置上设置BatchSize属性,但即便如此,也没有什么能阻止它尽可能快地提交批量大小。

可以创建自定义适配器以等待一段时间,然后再提交其他文件进行处理。您可以将其基于SDK File Adapter sample