디스크 경쟁을 피하는 방법
BizTalk Server 영구 시스템으로 설계되었습니다. 처리량이 많은 시나리오의 경우 MessageBox 및 BizTalk 추적 데이터베이스에 심각한 경합이 발생할 수 있습니다. 이러한 경쟁은 느린 디스크로 인해 더욱 심화될 수 있는데, 디스크 속도가 느리면(평균 평균 15ms 초과. 디스크 초/읽기 또는 평균 디스크 초/쓰기) SQL Server 잠금을 더 길게 유지할 수 있습니다(잠금 대기 시간이 높고 잠금 시간 초과가 높음). 그러면 MessageBox 테이블(스풀 및 애플리케이션 큐)이 증가하여 데이터베이스가 부풀어 오르고 제한이 발생할 수 있습니다. 이 상황은 궁극적으로 전반적인 지속 가능한 처리량이 낮아지게 합니다.
참고
서버에 디스크 병목 현상이 있는지 확인하는 방법에 대한 자세한 내용은 Windows 성능 모니터(https://go.microsoft.com/fwlink/?LinkID=204007)를 참조하세요. Windows 성능 모니터는 시스템 성능을 분석하는 도구를 제공하는 MMC(Microsoft Management Console) 스냅인입니다.
디스크 경합을 방지하려면 다음을 수행합니다.
단계 | 참조 |
---|---|
Raid10/0+1 디스크 구성을 사용합니다. | 병목 상태 방지에 대한 모범 사례 |
가능하면 고속 SAN에 데이터베이스를 배포합니다. 여러 데이터베이스가 동일한 디스크를 공유하는 경우 별도의 전용 디스크에서 구성하는 것이 좋습니다. 또한 MessageBox 데이터베이스의 MDF 및 LDF 파일을 별도의 디스크로 분리하는 것이 좋습니다. | Databases2에 대한 파일 그룹 최적화 |
디스크 경합을 크게 줄이고 여러 데이터 파일에 부하를 분산하므로 TEMPDB 데이터베이스에 여러 파일을 할당하는 것이 좋습니다. | 사전 구성 데이터베이스 최적화2 |
MessageBox 데이터베이스를 BizTalk 추적 데이터베이스와 분리된 전용 서버로 분리하는 것이 좋습니다. | 구성 후 데이터베이스 최적화2 |
MSDTC 로그 파일 디렉터리를 별도의 전용 드라이브에 할당합니다. | 운영 체제 성능 최적화 |
PageFile 또는 MSDTC 로그로 인해 로컬 드라이브에 경쟁이 발생하면 PageFile 또는 MSDTC 로그를 다른 드라이브로 이동해 봅니다. | 병목 상태 방지에 대한 모범 사례 |
쓰기 작업을 위해 추적 데이터베이스를 최적화합니다. | 추적 데이터베이스의 병목 상태를 확인하는 방법 |
읽기 및 쓰기 작업을 위해 MessageBox 데이터베이스를 최적화합니다. | MessageBox Database1에서 병목 상태를 식별하는 방법1 |
BizTalk 호스트 instance CPU를 포화 상태인 경우 전송, 수신, 처리 및 추적 기능을 여러 호스트로 분리하는 것이 좋습니다. 이렇게 하면 전체 시스템 처리량을 개선하기 위해 오케스트레이션 기능이 별도의 전용 서버에서 실행되도록 시스템을 구성합니다. | BizTalk Server 성능 최적화 |
여러 오케스트레이션이 배포된 경우 다른 전용 오케스트레이션 호스트에 등록하는 것이 좋습니다. 이렇게 하면 서로 다른 오케스트레이션이 격리되고 동일한 물리적 주소 공간이나 동일한 서버에서 공유 리소스에 대한 경합이 방지됩니다. | BizTalk Server 성능 최적화 |
Windows 성능 모니터 사용하여 디스크 경합 문제를 진단하는 것이 좋습니다. | Windows 성능 모니터 |
디스크 성능 분석에 대한 자세한 내용은 다음 리소스를 참조하세요.
2008년 SQL Server 성능 문제 해결의 "I/O 병목 상태" 섹션