在启动时处理大量的邮件通过 SOAP 适配器在 BizTalk Server FIX: 低性能

注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。

点击这里察看该文章的英文版: 886966
本文已归档。它按“原样”提供,并且不再更新。
重要本文包含有关如何修改注册表的信息。请确保您对其进行修改之前备份注册表。请确保您知道如何还原注册表发生问题。有关如何备份、 还原,以及修改注册表的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
256986在 Microsoft Windows 注册表的说明
症状
在 Microsoft BizTalk Server 2006 R2 中、 在 Microsoft BizTalk Server 2006 年或 Microsoft BizTalk Server 2004 中,您处理大量的邮件通过 SOAP 适配器时,可能会遇到在启动时的性能降低。出现此问题时, 可能需要很长的时间之前邮件通过 SOAP 适配器进行处理。时间长度可能会有所不同,具体取决于必须处理的消息数。
原因
SOAP 适配器初始化和启动线程池不是大得足以处理 SOAP 请求的数量时,将出现此问题。因此,SOAP 适配器必须添加到线程池的工作线程。此过程可能需要一些时间来完成。添加更多的工作线程的过程将继续直到达到最大线程限制。

注意要最大限度地提高了可用于处理 Web 服务请求的线程数,建议 SOAP 适配器和业务流程在不同进程中运行。若要此配置创建 BizTalk 服务器管理器中的新的 BizTalk 主机实例。
解决方案

BizTalk Server 2006 R2 或 BizTalk Server 2006

若要解决此问题,在 BizTalk Server 2006 R2 中或在 BizTalk Server 2006 年中了症状部分中描述的您必须添加以下注册表项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTSSvc$Hostname\CLR Hosting
此外,您必须将下列 DWORD 项添加到此注册表项:
  • MinCompletionPortThreads
  • MinWorkerThreads
  • MaxWorkerThreads
我们建议您通过使用以下公式设置 MinWorkerThreads DWORD 项的值:
您希望在 SOAP 适配器 + 10%上加载消息的最大数量
例如对于如果您希望加载 SOAP 适配器上的 200 条消息,值应该是 220。默认状态下,MinCompletionPortThreads DWORD 项设置为 150 的值。

若要将此新的注册表项,请按照下列步骤。

警告如果您修改注册表错误地使用注册表编辑器或使用另一种方法,则可能会出现严重问题。这些问题可能需要重新安装操作系统。Microsoft 不能保证可以解决这些问题。修改注册表的风险由您自己承担。
  1. 单击 开始、 单击 运行,键入 regedit,然后单击 确定
  2. 找到并单击以下注册表子项: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTSSvc $ Hostname注意 此注册表子项中,HostName 是与主机实例相关联的主机的名称。

    注意如果 CLR 主控 键已存在,请转到步骤 5。
  3. 编辑 菜单上单击 新建,然后单击
  4. 键入 CLR 驻留,然后按 ENTER 键。
  5. 找到并单击以下注册表子项:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTSSvc $ Hostname
  6. 编辑 菜单上单击 新建,然后单击 DWORD 值
  7. 键入 MinCompletionPortThreads,然后按 ENTER 键。
  8. 编辑 菜单上单击 新建,然后单击 DWORD 值
  9. 键入 MinWorkerThreads,然后按 ENTER 键。
  10. 用鼠标右键单击 MinWorkerThreads,然后单击 修改
  11. 编辑 DWORD 值 对话框中单击 十进制,,然后键入通过使用推荐的公式计算的值。

    注意例如对于如果您希望加载 SOAP 适配器上的 200 条消息,值应该是 220。
  12. 文件 菜单上单击 退出
有关
MaxWorkerThreads
和 BizTalk Server 的详细信息请访问下面的 Microsoft 开发人员网络 (MSDN) 站点:
有关详细的信息请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
824684用于描述 Microsoft 软件更新的标准术语的说明

BizTalk Server 2004

服务包信息

若要解决此问题,获得最新的 service pack,对于 Microsoft BizTalk Server 2004。有关详细的信息请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
888751如何获取最新的 BizTalk Server 2004 服务包

修补程序信息

可以从 Microsoft 获得支持的修补程序。但是,此修补程序被用于解决本文所述的此问题。此修补程序仅应用于出现这一特定问题的系统。此修补程序可能会接受进一步的测试。因此,如果此问题没有对您造成严重的影响,我们建议您等待包含此修补程序的下一个软件更新。

是否可供下载此修补程序没有"提供修补程序下载"部分中,在这篇知识库文章的顶部。如果不会显示此部分,请联系 Microsoft 客户服务和支持以获取此修复程序。

注意如果出现其他问题,或者如果需要进行任何故障诊断,则您可能不得不创建单独的服务请求。将正常收取支持费用将应用于其他支持问题和不需要进行此特定的修补程序的问题。有关完整列表的 Microsoft 客户服务和支持的电话号码,或创建一个单独的服务请求,请访问下面的 Microsoft 网站:注意"提供修补程序下载"窗体所显示的此修复程序是可用的语言。如果您看不到您的语言,则是一个修复程序不能用于该语言。
系统必备组件
需要任何先决条件不。
重新启动要求
您不必在应用此修补程序后重新启动计算机。
注册表信息
应用此修补程序后,您必须修改注册表。有关更多的信息,请参阅"更多信息"部分。
修补程序替换信息
此修补程序不替代任何其他修补程序。
文件信息
此修补程序的英文版具有的文件属性 (或更新的文件属性) 在下表中列出。日期和时间对这些文件列出在协调世界时 (UTC)。当您查看文件信息时,将转换为本地时间。若要 UTC 与本地时间之间的时差使用控制面板中的日期和时间项中的 时区 选项卡。
   Date         Time   Version     Size    File name   ---------------------------------------------------------------------------   07-Oct-2004  21:16  3.0.5348.0  61,440  Microsoft.biztalk.soaptransport.dll  
注意 由于存在文件依赖性包含这些文件的最新修补程序还可能包含其他文件。
状态
Microsoft 已经确认这是在"适用于"一节中列出的 Microsoft 产品中的问题。BizTalk Server 2004 Service Pack 1 中,此问题已得到纠正。
更多信息
在 BizTalk Server 2004,解决方案部分中描述的修补程序引入一个新的注册表项设置为 SOAP 请求提供服务在启动时可用的工作线程的最小数量。因此,您应用此修补程序后,您必须添加以下注册表项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTSSvc{Guid}\CLR Hosting
此外,您必须将下列 DWORD 项添加到此注册表项:
  • MinCompletionPortThreads
  • MinWorkerThreads
我们建议您通过使用以下公式设置 MinWorkerThreads DWORD 项的值:
您希望在 SOAP 适配器 + 10%上加载消息的最大数量
例如对于如果您希望加载 SOAP 适配器上的 200 条消息,值应该是 220。默认状态下,MinCompletionPortThreads DWORD 项设置为 150 的值。

在 BizTalk Server 2004 中添加此新的注册表项,请按照下列步骤。

警告如果您修改注册表错误地使用注册表编辑器或使用另一种方法,则可能会出现严重问题。这些问题可能需要重新安装操作系统。Microsoft 不能保证可以解决这些问题。修改注册表的风险由您自己承担。
  1. 单击 开始、 单击 运行,键入 regedit,然后单击 确定
  2. 找到并单击以下注册表子项:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTSSvc{GUID}
    注意在此的注册表子项中 GUID 是一个 GUID。
  3. 编辑 菜单上单击 新建,然后单击
  4. 键入 CLR 驻留,然后按 ENTER 键。
  5. 找到并单击以下注册表子项:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTSSvc{Guid}\CLR Hosting
  6. 编辑 菜单上单击 新建,然后单击 DWORD 值
  7. 键入 MinCompletionPortThreads,然后按 ENTER 键。
  8. 编辑 菜单上单击 新建,然后单击 DWORD 值
  9. 键入 MinWorkerThreads,然后按 ENTER 键。
  10. 用鼠标右键单击 MinWorkerThreads,然后单击 修改
  11. 编辑 DWORD 值 对话框中单击 十进制,,然后键入通过使用推荐的公式计算的值。

    注意例如对于如果您希望加载 SOAP 适配器上的 200 条消息,值应该是 220。
  12. 文件 菜单上单击 退出

bts2006 bts2004

警告:本文已自动翻译

属性

文章 ID:886966 - 上次审阅时间:01/17/2015 09:09:05 - 修订版本: 4.0

Microsoft BizTalk Server 2006 R2 Standard Edition, Microsoft BizTalk Server 2006 R2 Enterprise Edition, Microsoft BizTalk Server 2006 R2 Developer Edition, Microsoft BizTalk Server 2006 Standard Edition, Microsoft BizTalk Server 2006 Enterprise Edition, Microsoft BizTalk Server 2006 Developer Edition, Microsoft BizTalk Server 2004 Standard Edition, Microsoft BizTalk Server 2004 Partner Edition, Microsoft BizTalk Server 2004 Enterprise Edition, Microsoft BizTalk Server 2004 Developer Edition

  • kbnosurvey kbarchive kbmt kbautohotfix kbbiztalk2004sp2fix kbbiztalk2004-2006swept kbbug kbfix kbhotfixserver kbqfe KB886966 KbMtzh
反馈