我有一个简单的azure biztalk服务项目。
它有一个FTP源,它读取.CSV文件并写入内部部署的sqlserver数据库表。
我成功部署了它,适用于小型.CSV文件(大约800行)。但是,当我有一个大文件(大约6500行。实际上,在我看来这也是非常小的文件),它失败并出现以下错误。在此错误下,您将看到我对SQLServer适配器服务的配置。
<?xml version="1.0" encoding="utf-16"?>
<s:Fault xmlns:s="http://www.w3.org/2003/05/soap-envelope">
<s:Code>
<s:Value>s:Receiver</s:Value>
<s:Subcode>
<s:Value>s:SendError</s:Value>
</s:Subcode>
</s:Code>
<s:Reason>
<s:Text xml:lang="en-US">The operation with action "TableOp/Insert/dbo/tblVMSData"
took longer than the specified timeout "00:01:00".</s:Text>
</s:Reason>
</s:Fault>
My on premise SQL Server adapter service has the following configuration.
<basicHttpRelayBinding>
<binding name="basicHttpRelayBinding1"
closeTimeout="00:20:00"
openTimeout="00:20:00"
receiveTimeout="00:20:00"
sendTimeout="00:20:00"
maxBufferPoolSize=" 1048576"
maxBufferSize="67108864"
maxReceivedMessageSize="67108864">
<readerQuotas maxDepth="2147483647"
maxStringContentLength="2147483647"
maxArrayLength="2147483647"
maxBytesPerRead="67108864"
maxNameTableCharCount="2147483647" />
<security mode="Transport" />
</binding>
</basicHttpRelayBinding>
答案 0 :(得分:0)
您可能必须使服务器端的超时值更大!因此,如果您查看BizTalk Services项目,请查找SQL端点配置文件(在解决方案资源管理器中的行程中)并在那里编辑WCF配置值。 这有用吗?
答案 1 :(得分:0)
我终于找到了超时的配置选项。它们不在任何配置文件中。他们甚至不在biztalk服务项目中。
您必须在Biztalk Adapter Services下的LOB Types下右键单击您的SQL Target,然后选择属性。在属性中,单击“绑定配置”。它打开了高级适配器配置。有四个超时&#34;开放超时&#34;,&#34;接收超时&#34;,&#34;发送超时&#34;和&#34;关闭超时&#34;。
奇怪的是,这些超时也出现在将SQL目标拖放到MessageFlowItinerary时自动生成的配置文件中。但是,在我的情况下,在配置文件中更改它们似乎还不够。
此外,当您打开IIS管理控制台时,可以通过单击&#34;管理WCF和WF服务&#34;下的配置选项来更改超时的客户端配置。如果您没有看到&#34;管理WCF和WF服务&#34;,您还没有安装Windows Server App Fabric SDK。下载并安装它。
Microsoft应该可以从一个简单的页面轻松查找和更改服务器和客户端的配置。点击不同的内容来查找选项真的很令人沮丧。它应该只是开箱即用。一方面,他们通过提供配置选项提供灵活性,另一方面,他们通过将配置选项隐藏在不同的岩石下来抢夺它。