操作系统优化

本主题提供有关优化生产BizTalk Server环境中使用的BizTalk Server计算机性能的建议。 安装和配置BizTalk Server后,将应用这些优化。

有关提高操作系统性能的一般准则

以下建议可用于提高操作系统性能:

安装最新的 BIOS、存储区域网络 (SAN) 驱动程序、网络适配器固件和网络适配器驱动程序

硬件制造商会定期发布 BIOS、固件和驱动程序更新,以提高相关硬件的性能和可用性。 访问硬件制造商的网站,下载并应用BizTalk Server环境中的每台计算机上的以下硬件组件的更新:

  1. BIOS 更新

  2. 如果使用 SAN) ,则 SAN 驱动程序 (

  3. NIC 固件

  4. NIC 驱动程序

将 MSDTC 日志文件目录分配到单独的专用驱动器

在单独的SQL Server计算机上具有多个 MessageBox 数据库的BizTalk Server环境中,与 Microsoft 分布式事务处理协调器 (MSDTC) 相关的额外开销。 默认情况下,MSDTC 日志文件位于运行 DTC 服务的计算机的 %systemdrive%\windows\system32\msdtc 目录中。 若要降低 DTC 日志记录可能成为性能瓶颈的可能性,请考虑将 MSDTC 日志文件目录移动到快速磁盘驱动器。 若要更改 MSDTC 日志文件目录,请执行以下步骤:

  1. 单击 “开始”,单击“ 运行”,然后键入 dcomcnfg 以启动 组件服务 管理控制台。

  2. 展开 “组件服务”,展开“ 计算机”,右键单击“ 我的计算机”,然后单击“ 属性”。

  3. 在“ 我的计算机属性 ”对话框中,单击“ MSDTC ”选项卡。

  4. 在“日志信息”下的“位置编辑”框中,键入希望创建新日志的路径 (例如 G:\Logs\DTCLog) 。

  5. 单击“ 重置日志”,系统将提示你重启服务。 单击 “确定 ”重启 DTC 服务,然后单击“ 确定 ”确认 MSDTC 服务已重启。

配置防病毒软件以避免实时扫描BizTalk Server可执行文件和文件删除

防病毒软件实时扫描BizTalk Server可执行文件以及受BizTalk Server接收位置监视的任何文件夹或文件共享可能会对BizTalk Server性能产生负面影响。 如果在) BizTalk Server计算机上安装了防病毒软件 (,则禁用BizTalk Server接收位置引用的非可执行文件类型的实时扫描, (通常 .XML,但也可以 .csv、.txt 等 ) ,并配置防病毒软件以排除扫描BizTalk Server可执行文件

禁用BizTalk Server环境中的计算机之间的入侵检测网络扫描

入侵检测软件可能会减慢甚至阻止通过网络进行的有效通信。 如果安装了入侵检测软件,请禁用BizTalk Server计算机与外部数据存储库之间的网络扫描, (SQL Server) 计算机或消息服务 (消息队列、WebSphere MQSeries 等 ) 计算机。

定期对BizTalk Server环境中的所有磁盘进行碎片整理

BizTalk Server环境中的过多磁盘碎片会对性能产生负面影响。 按照以下步骤在 BizTalk Server 环境中对磁盘进行碎片整理:

  1. 通过安排非工作时间磁盘碎片整理,定期对本地和 SAN/NAS) (的所有磁盘进行碎片整理。

  2. 对 Windows PageFile 进行碎片整理,并在BizTalk Server环境中预分配每个磁盘的主文件表,以提高整体系统性能。

    注意

    使用 PageDefrag 实用工具对 Windows PageFile 进行碎片整理并预先分配主文件表。 有关详细信息,请转到 Windows 命令:碎片整理

如果在) (SQL Server计算机上安装了防病毒软件,请禁用数据和事务文件的实时扫描

实时扫描SQL Server数据和事务文件 (.mdf、.ndf、.ldf、.mdb) 可能会增加磁盘 I/O 争用并降低SQL Server性能。 请注意,SQL Server数据和事务文件的名称可能因BizTalk Server环境而异。 有关使用默认BizTalk Server配置创建的数据和事务文件的详细信息,请参阅优化数据库的文件组

为BizTalk Server配置 MSDTC

查看以下信息,为BizTalk Server配置 MSDTC:

为BizTalk Server配置防火墙 ()

注意

仅当BizTalk Server环境中存在一个或多个防火墙时,才需要执行此步骤。

查看以下信息,为BizTalk Server配置防火墙 () :

在所有卷上使用 NTFS 文件系统

Windows Server 提供多种文件系统类型用于格式化驱动器,包括 NTFS、FAT 和 FAT32。 NTFS 应始终是服务器选择的文件系统。Windows Server

NTFS 比 FAT 和 FAT32 文件系统具有相当大的性能优势,应仅在 Windows 服务器上使用。 此外,NTFS 比 FAT 和 FAT32 提供了许多安全性、可伸缩性、稳定性和可恢复性优势。

在以前版本的 Windows 下,FAT 和 FAT32 通常针对较小的卷实现, (<500 MB) ,因为它们在此类情况下通常速度更快。 由于目前磁盘存储相对便宜,并且操作系统和应用程序将驱动器容量推至最大值,因此不太可能使用如此小的卷。 FAT32 在较大的卷上缩放比 FAT 更好,但仍不是适用于 Windows 服务器的文件系统。

FAT 和 FAT32 过去通常已实现,因为它们被视为在卷出现问题时更易于使用本机 DOS 工具进行恢复和管理。 如今,随着各种 NTFS 可恢复性工具以本机方式构建到操作系统中,并作为第三方实用工具提供,因此不再存在不对文件系统使用 NTFS 的有效参数。

不要使用 NTFS 文件压缩

尽管使用 NTFS 文件系统压缩是减少卷空间的一种简单方法,但它不适用于企业文件服务器。 对于所有磁盘操作,实现压缩都会给 CPU 带来不必要的开销,最好避免。 在认真考虑文件系统压缩之前,请考虑添加其他磁盘、近行存储或考虑存档数据的选项。

查看磁盘控制器条带大小和卷分配单元

在硬件驱动器控制器中配置驱动器阵列和逻辑驱动器时,请确保将控制器条带大小与将设置卷格式的分配单元大小相匹配。 这将确保磁盘读取和写入性能达到最佳状态,并提供更好的整体服务器性能。

配置更大的分配单元 (或群集或块) 大小会导致磁盘空间的使用效率降低,但也将提供更高的磁盘 I/O 性能,因为磁盘头可以在每次读取活动期间读取更多数据。

若要确定用于配置控制器和格式化磁盘的最佳设置,应确定具有类似文件系统特征的服务器磁盘子系统上的平均磁盘传输大小。 使用 Windows Server 性能监视器工具在正常活动期间监视 Avg.Disk Bytes/Read 和 Avg.Disk Bytes/Write 的逻辑磁盘对象计数器,以帮助确定要使用的最佳值。

尽管如果系统将访问许多小型文件或记录,则可能需要较小的分配单元大小,但在大多数情况下,64 KB 的分配单元大小可提供良好的性能和 I/O 吞吐量。 当磁盘负载增加时,可以特别注意到优化分配单元大小的性能改进。

注意

格式化卷时,需要 FORMAT 命令行工具或磁盘管理工具来指定大于 4096 字节 (4 KB) 的分配单元大小。 Windows 资源管理器最多只能设置此阈值的格式。 CHKDSK 命令可用于确认卷的当前分配单元大小,但需要先扫描整个卷,然后才能显示所需信息, (在每个分配单元) 中显示为字节数。

监视驱动器空间利用率

磁盘上的数据越少,其运行速度就越快。 这是因为在经过良好碎片整理的驱动器上,数据尽可能靠近磁盘的外部边缘写入,因为这是磁盘旋转速度最快并产生最佳性能的地方。

磁盘查找时间通常比读取或写入活动长得多。 如上所述,数据最初写入磁盘的外部边缘。 随着对磁盘存储的需求增加和可用空间的减少,数据写入更接近磁盘的中心。 当头离开边缘时,查找数据时磁盘查找时间会增加,并且当找到时,读取时间会更长,从而影响磁盘 I/O 性能。

这意味着,监视磁盘空间利用率不仅出于容量原因,而且对于性能也很重要。

根据经验法则,努力实现将磁盘可用空间保持在总磁盘空间的 20% 到 25% 之间的目标。 如果可用磁盘空间低于此阈值,则磁盘 I/O 性能将受到负面影响。

实施策略以避免磁盘碎片

定期在磁盘(包括根驱动器)上运行碎片整理程序实用工具,以防止性能下降。 每周在繁忙的磁盘上执行此操作。 磁盘碎片整理程序随 Windows Server 一起安装,可以按指定的时间间隔从计划任务运行。

优化后台服务的 Windows Server 性能

BizTalk Server进程 (BTSNTSVC.exe) 作为后台服务运行。 默认情况下,Windows Server 配置为针对应用程序(而不是后台服务)的最佳性能进行调整。

Windows Server 使用抢占式多任务来确定 CPU 将关注的进程线程的优先级。 先发制人多任务是一种方法,即停止执行一个进程并启动另一个进程,由操作系统自行决定。 此方案可防止单个线程主导 CPU。

将 CPU 从执行一个进程切换到下一个进程称为上下文切换。 Windows 操作系统包含一个设置,用于确定在上下文切换发生和为下一个线程提供服务之前,允许单个线程在 CPU 上运行多长时间。 此时间量称为量子。 此设置允许你选择如何在前台程序和后台服务之间共享处理器 quanta。 通常,对于服务器,不允许前台程序分配比后台服务更多的 CPU 时间。 也就是说,应在服务器上运行的所有应用程序及其进程同等考虑 CPU 时间。

若要提高后台服务(如 BizTalk 主机实例)的性能,请执行以下步骤:

  1. 单击“开始”,单击“控制面板”,然后单击“系统”。

  2. 单击“高级”选项卡,然后单击“性能”下的“设置”。

  3. 单击“ 高级 ”选项卡,单击“ 后台服务”,然后单击“ 确定 ”两次。

手动加载 Microsoft 证书吊销列表

启动 .NET 应用程序时,.NET Framework将尝试下载任何已签名程序集 (CRL) 的证书吊销列表。 如果系统没有直接访问 Internet 的权限,或者无法访问 Microsoft.com 域,则可能会延迟启动BizTalk Server。 若要避免应用程序启动时出现这种延迟,可以使用以下步骤在系统上手动下载并安装代码签名证书吊销列表。

  1. http://crl.microsoft.com/pki/crl/products/CodeSignPCA.crlhttp://crl.microsoft.com/pki/crl/products/CodeSignPCA2.crl下载最新的 CRL 更新。

  2. 将 CodeSignPCA.crl 和 CodeSignPCA2.crl 文件移动到隔离的系统。

  3. 在命令提示符下,输入以下命令,以使用 certutil 实用工具使用步骤 1 中下载的 CRL 更新本地证书存储:

    certutil –addstore CA c:\CodeSignPCA.crl

    CRL 文件会定期更新,因此应考虑设置下载和安装 CRL 更新的重复任务。 若要查看下一次更新时间,请双击 .crl 文件并查看“ 下一个更新” 字段的值。

在所有服务器上同步时间

涉及票证、收据和日志记录的许多操作都依赖于本地系统时钟的准确性。 在分布式环境中尤其如此,因为系统之间的时间差异可能导致日志不同步,或者一个系统颁发的票证因过期或尚未有效而被拒绝。

有关将服务器配置为自动同步时间的详细信息,请参阅 为客户端计算机配置自动域时间同步

配置 Windows PAGEFILE 以获得最佳性能

按照以下准则配置 Windows PAGEFILE (分页文件) 以获得最佳性能:

  1. 将分页文件移动到与安装操作系统的物理驱动器分开的物理卷,以减少磁盘争用并提高磁盘性能 - 在BizTalk Server计算机上,与移动分页文件相关的性能提升因文档处理负载而异。 在SQL Server计算机上,由于SQL Server的磁盘密集型性质,在所有情况下,将分页文件移动到单独的卷被认为是最佳做法。

  2. 将分页文件隔离到一个或多个专用物理驱动器上,这些驱动器配置为 RAID-0 (条带化) 或 RAID-1 (镜像) 阵列,或者在没有 RAID 的单个磁盘上 - 通过使用专用磁盘或驱动器阵列,其中 PAGEFILE.SYS 是整个卷上唯一的文件,分页文件不会碎片化, 这也将提高性能。 与大多数磁盘阵列一样,随着数组中物理磁盘数量的增加,阵列的性能得到了提高。 如果分页文件分布在磁盘阵列中多个物理驱动器上的多个卷之间,则分页文件大小应与阵列中每个驱动器的大小相同。 配置磁盘阵列时,还建议使用容量和速度相同的物理驱动器。 请注意,分页文件通常不需要冗余。

  3. 不要在 RAID 5 阵列上配置分页文件 - 不建议在 RAID 5 阵列上配置分页文件,因为分页文件活动是写入密集型的,并且 RAID 5 阵列更适合读取性能,而不是写入性能。

  4. 如果没有资源将分页文件移动到安装操作系统以外的物理卷,请将分页文件配置为驻留在与操作系统相同的逻辑卷上 - 将分页文件配置为驻留在与操作系统位于同一物理磁盘上的另一个逻辑卷上将增加磁盘查找时间并降低系统性能,因为磁盘驱动器盘片头会增大磁盘查找时间并降低系统性能将持续在卷之间移动,或者访问页面文件、操作系统文件、应用程序文件和数据文件。 此外,操作系统通常安装在物理磁盘的第一个分区上,该分区通常最靠近物理磁盘的外部边缘,其中磁盘速度为 ,相关性能最适合磁盘。

    重要

    如果确实从启动分区中删除分页文件,Windows 将无法创建故障转储文件 (MEMORY。DMP) ,在发生内核模式 STOP 错误时写入调试信息。 如果确实需要故障转储文件,则除了在启动分区上保留至少物理内存大小 + 1 MB 的分页文件之外,别无选择。

  5. 手动设置分页文件的大小 – 手动设置分页文件的大小通常比允许服务器自动调整其大小或根本没有分页文件提供更好的性能。 最佳做法优化是将分页文件的初始 (最小) 和最大大小设置设置为相同的值。 这可确保不会因动态调整分页文件的大小而丢失任何处理资源,这可能很密集。 鉴于此大小调整活动通常在系统上的内存资源已变得受限时发生,则尤其如此。 设置相同的最小和最大页面文件大小值还可以确保磁盘上的分页区域是一个连续的单一区域,从而缩短磁盘查找时间。