BizTalk 2013 R2 WCF-SQL适配器存在随机问题

BizTalk 2013 R2 WCF-SQL适配器存在随机问题,biztalk,biztalk-2013r2,Biztalk,Biztalk 2013r2,啊, BizTalk 2013 R2中有两个BizTalk应用程序似乎存在随机问题。两个应用程序都遵循相同的过程 从WCF端点提取数据 通过存储过程从数据库中删除数据 插入通过WCF-SQL调用提取的新数据 在我们的测试过程中,这两个应用程序都工作得很好。但是,随着时间的推移,通过WCF-SQL调用插入时出现了一些问题 从网络读取输入流时发生致命错误。会话将被终止(输入错误:64,输出错误:0) 此错误显示在Sql Server日志中。我们用了大约一天,然后它就消失了。在目标sql serv

啊,

BizTalk 2013 R2中有两个BizTalk应用程序似乎存在随机问题。两个应用程序都遵循相同的过程

  • 从WCF端点提取数据
  • 通过存储过程从数据库中删除数据
  • 插入通过WCF-SQL调用提取的新数据
在我们的测试过程中,这两个应用程序都工作得很好。但是,随着时间的推移,通过WCF-SQL调用插入时出现了一些问题

  • 从网络读取输入流时发生致命错误。会话将被终止(输入错误:64,输出错误:0)
  • 此错误显示在Sql Server日志中。我们用了大约一天,然后它就消失了。在目标sql server上,其他一切都继续正常工作。只有BizTalk出现了问题

  • 我们最新的错误是发生了对WCF-SQL插入的请求(数据实际上已插入),但从来没有响应。因此,发送端口继续尝试发送,以供重试,而编排只是脱水
  • 我们修改了整个应用程序中的每个设置,试图解决这个问题,但只有删除应用程序并重新部署才能解决这个问题(至少现在是这样)


    所以,我想我的问题是,是否有其他人在BizTalk出现类似这样的“随机”错误时遇到过这样的问题,在这种情况下,BizTalk会工作得很好,然后像我们看到的那样走下坡路


    我真的更希望有一个稳定的,是最低限度的维护。这毕竟是一个企业产品。

    在数据存在差异的环境之间移动时,我也遇到过类似的问题,例如,QA中有一列为空,而PROD中有一列为实际数据。您可以尝试一些方法

  • 使用SQL Server Profiler捕获来自BizTalk的RPC调用,并尝试直接在BizTalk远程调用的SQL Server上运行该调用(如果这是生产事务,则将其包装在最后回滚的事务中)。运行时间是否比预期的长?调试该过程以找到痛点,并尽可能进行优化。我在这里写了一篇关于如何做到这一点的博客:
  • 在发送端口的绑定配置中设置超时,以确保它在SQL完成其工作之前不会超时
  • 在Machine.config中设置System.Transactions超时,以确保MSDTC不会导致问题:以及
  • 如果可能,在测试/质量保证和产品数据库之间进行数据比较。查找显著差异,尤其是在连接条件和WHERE子句中使用的列中

  • 首先感谢你的帮助。1, 2, & 3. 我以前做过探查器捕获,所以我可以尝试,但我发现数据正确地插入到表中。因此,数据正在到达那里,事务正在完成。我考虑过4,我正在使用的表是全新的,在每个环境中都是完全相同的。请尝试捕获已完成的RPC,看看SQL server正在发送回什么。可能是SQL Server问题?我将不得不等待应用程序再次失败,但如果/当它失败时,我将尝试将此作为调试它的第一步。谢谢你的帮助。所以我的申请突然又失败了。通过完全删除应用程序并重新部署来修复以前的问题,但现在已经不起作用了。我做了RPC捕获,一切看起来都正常。