BizTalk 2013在源文件完成之前启动消息处理?

Dan*_*ess 1 sql-server biztalk esb biztalk-2013

我们有一个庞大而复杂的文件需要很长时间才能反汇编(比方说,一小时).如果我们可以在消息离开接收管道时分离消息并在文件完成之前立即开始他们的行程,那将是很好的.我可以说这不容易,但它有可能吗?

Joh*_*305 7

没有开箱即用.管道反汇编是事务性的,因此,如您所见,整个交换被分配并立即提交给MessageBox.

以下是一些选项:

  1. 如果您正在接收每行都是消息的平面文件,请使用SSIS将其加载到表中,然后使用SQL适配器,通过一次轮询~10来消除消息.
  2. 如果您正在接收复杂的平面文件或Xml,您可以将eithr XmlDasm或FFDasm包装在自定义的反汇编程序组件中,而不是将已分配的消息返回到MessageBox,将其推送到其他位置.A)如果不需要订单,文件系统很容易.B)MSMQ将保持消息在文件中出现的顺序.

我已经使用了这两种方法,其中传入的文件具有100k到400k的记录,并且它确实提供了更可管理的性能配置文件.