biztalk - 根据 BizTalk 中的 xml 内容按顺序传递消息
问题描述
我在通过网站从第三方接收文件时遇到问题。这些文件按顺序来自第三方并位于一个文件夹中。由于安全限制,我无法通过 SMB 直接轮询目录,而是必须使用 SFTP 每 1 分钟获取一次文件。这会产生一个问题,因为按顺序交付给我的文件现在都在我的接收位置的文件夹中。我需要按照它们到达我的发送端口的顺序传送这些文件。
我曾考虑创建一个单独的程序来打开文件,然后按顺序将它们复制(基于 XML 中称为 SequenceId 的段)到 BizTalk 服务器中的一个文件夹,该文件夹由接收位置监控,这将确保文件被传递为了。我不想介绍另一个故障点(程序),但我不确定如何使用纯 BizTalk 做到这一点。
解决方案
您可以使用纯 BizTalk(搜索 BizTalk 重新排序)来执行此操作,但是您最终会得到一个复杂的解决方案,包括单例业务流程,并且使用数据库表通常更容易。
- 第一个界面将其拾取,然后将数据插入表中。如果您的消息结构是平面的,则可以作为平面表,或者作为一个包含 XML 数据的字段和另一个包含从有效负载中提取的序列号的字段。
- 您的第二个接口轮询一个存储过程,该过程查看是否可以处理下一个序列。
如果某个序列的特定消息从未到达,您是否发送警报,或在预设延迟后处理您收到的消息,您将不得不考虑该怎么做。
推荐阅读
- c# - 不包含 Key 的定义
- apache-spark - 使用 DataFrame.foreachPartition,将分区处理为数据帧
- python - 创建右键菜单pyQT Maya
- sharepoint - 卸载 SharePoint 2016 期间,一个或多个必需的 Office 组件未能成功完成错误
- python - 使用 summary_out 时将回归结果导出为 csv 文件
- python - 如何上下文管理多个 zip 文件的 BytesIO?
- javascript - 为什么 queryselector 没有单击 HTML 页面中的类元素?
- network-programming - rps过程使用带有local_irq_disable的spinlock的原因
- pi - 为 Pi-Strech 安装 Flask 和 Paho mqtt 时出错
- swift - Swift 4:不推荐使用“init”。CountableRange 现在是 Range