如何避免磁盘争用
BizTalk Server设计为持久性系统。 对于高吞吐量方案,MessageBox 和 BizTalk 跟踪数据库可能会遇到严重争用。 缓慢的磁盘速度会进一步加重这种争用状况。 如果磁盘速度慢 (平均大于 15 毫秒(平均磁盘秒/读取或平均磁盘秒/写入) ),则可能会导致SQL Server锁定时间较长 (锁定等待时间过长,锁定超时) 。 这反过来又会导致 MessageBox 表 (后台处理程序和应用程序队列) 增长,从而导致数据库膨胀和限制。 这种情况最终会导致总体可持续吞吐量降低。
注意
有关确定服务器是否存在磁盘瓶颈的信息,请参阅 Windows 性能监视器 (https://go.microsoft.com/fwlink/?LinkID=204007) 。 Windows 性能监视器是 Microsoft 管理控制台 (MMC) 的一个管理单元,它提供了一些用于分析系统性能的工具。
若要避免磁盘争用,请执行以下操作:
步骤 | 参考 |
---|---|
使用 Raid10/0+1 磁盘配置。 | 避免瓶颈的最佳做法 |
如果可能,请在高速 SAN 上部署数据库。 如果多个数据库共享同一个磁盘,我们建议在单独的 专用 磁盘上配置它们。 此外,建议将 MessageBox 数据库的 MDF 和 LDF 文件分离到单独的磁盘上。 | 优化 Database2 的文件组 |
请考虑为 TEMPDB 数据库分配多个文件,因为这将显著减少磁盘争用,并将负载分散到多个数据文件。 | 预配置数据库优化 2 |
请考虑将 MessageBox 数据库分离到独立于 BizTalk 跟踪数据库的专用服务器上。 | 配置后数据库优化 2 |
将 MSDTC 日志文件目录分配到单独的专用驱动器。 | 优化操作系统性能 |
如果因 PageFile 或 MSDTC 日志而在本地驱动器上出现争用情况,请尝试将 PageFile 和/或 MSDTC 日志移到不同的驱动器上。 | 避免瓶颈的最佳做法 |
针对写入操作优化跟踪数据库。 | 如何找出跟踪数据库数据库的瓶颈 |
针对读取和写入操作优化 MessageBox 数据库。 | 如何识别 MessageBox 数据库中的瓶颈1 |
如果 BizTalk 主机实例使 CPU 饱和,请考虑将发送、接收、处理和跟踪功能分离到多个主机中。 这会配置系统,使业务流程功能在单独的专用服务器上运行,以提高整体系统吞吐量。 | 优化 BizTalk Server 性能 |
如果部署了多个业务流程,请考虑在不同的专用业务流程主机中登记它们。 这会隔离不同的业务流程,并防止共享资源争用在同一物理地址空间或同一服务器上。 | 优化 BizTalk Server 性能 |
请考虑使用 Windows 性能监视器来诊断磁盘争用问题。 | Windows 性能监视器 |
有关磁盘性能分析的详细信息,请参阅以下资源:
排查 SQL Server 2008 中性能问题的“I/O 瓶颈”部分。