【问题标题】:Azure Biztalk Services time out issue when processing a large CSV file处理大型 CSV 文件时出现 Azure Biztalk 服务超时问题
【发布时间】:2014-04-17 18:41:22
【问题描述】:

我有一个简单的 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>

【问题讨论】:

    标签: biztalk


    【解决方案1】:

    您可能还必须将服务器端的超时值设置得更大!因此,如果您查看您的 BizTalk 服务项目,请查找您的 SQL 端点配置文件(在解决方案资源管理器中的您的行程下)并在那里编辑 WCF 配置值。 这行得通吗?

    【讨论】:

    • 如果您查看我的帖子,我已经复制了 SQL 端点的 basicHttpRelayBinding 设置。有 4 个超时值,OpenTimeout、receiveTimeout、Closetimeout 和 sendtimeout。我把它们撞到了 20 分钟。但是,它并没有解决问题。您指的是其他东西吗?您是否已成功部署了带有 SQL 适配器服务端点的 Biztalk 服务项目,该端点适用于平面文件中的大量行?请告诉我。
    • 你好。您必须在服务(网桥!)和客户端(适配器服务)端配置端点。两个都配置了吗?顺便说一句:我还没有用 SQL 做过任何大文件测试。
    • 我是 Biztalk 服务的新手。您能否更具体地了解配置选项,例如选项名称和文件名以及在哪里可以找到它?我已经为 IIS 中的 Biztalk 适配器服务下的 SQL 数据适配器数据服务配置了 WCF 和 WF 服务。我在 idel 超时时更改了卸载实例,并在空闲时保留了实例。我把他们俩都撞到了20分钟。但是,他们并没有解决问题。
    【解决方案2】:

    我终于找到了超时的配置选项。它们不在任何配置文件中。他们甚至不在 biztalk 服务项目中。

    您必须在 Biztalk 适配器服务下的 LOB 类型下右键单击您的 SQL 目标,然后选择属性。在属性中,单击绑定配置。它打开高级适配器配置。有四种超时“打开超时”、“接收超时”、“发送超时”和“关闭超时”。

    奇怪的是,当您将 SQL 目标拖放到 MessageFlowItinerary 时,这些超时也会出现在自动生成的配置文件中。但是,在我的情况下,在配置文件中更改它们似乎还不够。

    此外,当您打开 IIS 管理控制台时,您可以通过单击“管理 WCF 和 WF 服务”下的“配置”选项来更改客户端超时配置。如果您没有看到“管理 WCF 和 WF 服务”,则说明您尚未安装 Windows Server App Fabric SDK。下载并安装它。

    微软确实应该让从一个简单的页面中轻松查找和更改服务器和客户端的配置。点击不同的东西来找到选项真的很令人沮丧。它应该开箱即用。一方面,他们通过提供配置选项来提供灵活性,另一方面,他们通过将配置选项隐藏在不同的岩石下来掠夺它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-24
      • 2019-05-25
      • 1970-01-01
      • 2018-02-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多