BizTalk 2016 sFTP WinSCP - 无法接收更多消息

Posted

技术标签:

【中文标题】BizTalk 2016 sFTP WinSCP - 无法接收更多消息【英文标题】:BizTalk 2016 sFTP WinSCP - No more messages can be received 【发布时间】:2019-07-13 03:04:53 【问题描述】:

我们的 BizTalk 2016 环境由 2 个应用程序服务器组成,它们以 CU5FP3 运行在一个组中。

我们部署了 24 个应用程序。在这个应用程序中,我们有 27 个接收位置,配置了新的 sFTP WinSCP 适配器。对于所有 sFTP 接收应用程序,我们将“连接限制”配置为 5。我们连接到 6 个不同的 sFTP 服务器。

大约 2 小时后,我们收到以下事件日志警告,并且接收位置停止工作:

“适配器“SFTP”引发错误消息。详细信息“WCF 服务 地址“sftp://...”的主机出现故障,因此不再 可以在相应的接收位置接收消息。修理 问题,BizTalk Server 将自动尝试重新启动 服务主机。”

针对事件日志消息,服务主机未自动重新启动。

有人知道如何解决这个问题吗?

【问题讨论】:

您可能必须在该特定接收位置设置日志记录并查看它。警告:我们注意到,在应用 CU5 和新 WinScp 后,在 BizTalk 主机用户的 %TEMP% 文件夹中生成了一个扩展名为 .tmp 的大型 XML 日志文件,尽管这些日志似乎是针对一个端口我们尚未启用日志记录。在收到许多此类警告后,我们也有一个接收位置停止静默接收,并且不得不手动重新启动主机实例。还要检查轮询的频率,默认是5秒! 为接收位置启用了日志记录,我们看到适配器停止工作,因为在某些时候不再写入日志。我们的轮询间隔从 15 分钟到 240 分钟不等。手动重新启动主机实例后,接收位置会工作一段时间,但它们会遇到相同的问题。不幸的是,手动重启主机实例不是我们的解决方案,因为我们需要 24/7 接收来自相应 SFTP 的数据。 另一件似乎有帮助的事情是在端口上设置一个时间表,您只希望在特定时间使用这些文件。我们在 2013 R2 中遇到了一个问题,一个端口会静默停止接收。自从我们设定了时间表,问题就没有再次发生。 您是否在此期间找到了修复或解决方法 正如我们所看到的,其中一个 TrackingData_x_x 表有越来越多的数据无法由 biztalk 作业处理,Microsoft 支持人员建议我们 1. 增加工作线程 2. 禁用不必要的跟踪数据(我们禁用了所有编排跟踪和消息跟踪,因为我们使用 biztalk360 进行接收和发送端口自动更正)这对我们解决 sFTP 问题很有用。 【参考方案1】:

最新版本的 BizTalk Health Monitor 带有以下重要警告

“hostinstancename”的主机实例每个 cpu 需要更多的工作线程才能正确运行 SFTP 接收位置。将这些主机实例的“最大工作线程”属性增加到 500,并确保它们专用于此 SFTP 接收位置

所以要看的东西是

    有一个专用主​​机用于使用 SFTP 接收位置 将最大工作线程设置增加到 500 检查轮询频率(默认为 5 秒) 制定一个时间表,只在您需要的时间段内进行轮询。 如果不需要,禁用邮件正文跟踪。

【讨论】:

【参考方案2】:

试用 CU7,因为它包含几个 SFTP 修复程序。

【讨论】:

以上是关于BizTalk 2016 sFTP WinSCP - 无法接收更多消息的主要内容,如果未能解决你的问题,请参考以下文章

使用 WinSCP 以 Root 登录到 Google Compute Engine 虚拟机实例时收到“收到的 SFTP 数据包太大”

SSIS 通过 WINscp 从SFTP下载文件

SSIS 包将文件从一个文件夹移动到 SFTP (WinSCP) 中的另一个文件夹(SSIS 的 SFTP 任务)

如何使用 WinSCP 脚本从 SFTP 复制新文件

更改树莓派上的默认 SFTP 目录

Openwrt上开启sftp,使用SecureCRT,WinSCp等传输文件