다음을 통해 공유


SQL Server 계층 확장

각 BizTalk 그룹에 대해 마스터 MessageBox 데이터베이스를 하나 추가합니다. 추가하는 후속 MessageBox 데이터베이스를 모두 보조 MessageBox라고 합니다. 마스터 MessageBox는 모든 등록 및 메시지 라우팅을 처리하며 메시지를 게시할 수도 있습니다. 보조 MessageBox 데이터베이스는 특별히 메시지를 게시하도록 구성된 경우에만 메시지를 게시합니다.

보조 MessageBox 데이터베이스를 추가하는 방법

다음 두 가지 방법으로 보조 MessageBox 데이터베이스를 추가할 수 있습니다.

  • 같은 실제 서버에 보조 MessageBox 데이터베이스를 추가합니다.

    기존 MessageBox 실제 서버에 충분한 CPU 및 I/O 리소스가 있고 잠금 충돌에 의해서만 교착 상태가 된 경우에는 데이터베이스를 추가합니다. 별도의 IO 드라이브에 보조 MessageBox 데이터베이스를 만듭니다.

    장점

    • CPU 여유 리소스를 다른 MessageBox에서 사용할 수 있습니다.

    • 더 적은 수의 SQL 서버 라이센스가 필요합니다.

    • 네트워크 홉이 제거됩니다.

  • 다른 실제 서버에 보조 MessageBox 데이터베이스를 추가합니다.

    이 경우 고유 IO가 있는 전용 실제 서버를 추가 MessageBox 데이터베이스로 사용합니다.

    다음 그림은 하나의 MessageBox 데이터베이스에서 세 개의 MessageBox 데이터베이스로 SQL 계층을 확장하는 시나리오를 보여 줍니다.

    MSGBOX 스케일 아웃

MessageBox 데이터베이스를 확장하는 경우

  • MessageBox 데이터베이스가 병목 상태에 있습니다. 병목 상태는 다음과 같습니다.

    • Cpu 매우 비싸고 복잡한 오케스트레이션 시나리오의 경우 MessageBox 데이터베이스는 많은 CPU 리소스를 사용합니다. 또 다른 게시 MessageBox 데이터베이스를 추가하면 처리량이 늘어납니다.

    • 잠금 경합 여러 호스트 인스턴스 또는 오케스트레이션이 있는 복잡한 시나리오는 MessageBox 데이터베이스에서 잠금 경합을 만드는 경향이 있습니다. 또한 또 다른 게시 MessageBox 데이터베이스를 추가하면 처리량이 늘어납니다.

  • 업그레이드해도 병목 상태가 해결되지 않습니다. 예를 들어 마스터 MessageBox 데이터베이스가 잠금 충돌되는 경우 이 문제는 새 컴퓨터를 추가해야만 해결할 수 있습니다.

  • 업그레이드 비용이 많이 듭니다. 예를 들면 기존 4중 프로세서 서버를 8방향 서버로 업그레이드하는 것이 다른 4중 프로세서를 추가하는 것보다 비용이 많이 들 경우에는 새 컴퓨터를 추가하는 것이 좋습니다.

SQL 계층을 확장할 수 없는 경우

이론상 SQL 계층은 마스터 MessageBox 데이터베이스가 병목 상태만 아니면 무제한으로 확장할 수 있어야 합니다. 이렇게 하려면 마스터 MessageBox 데이터베이스를 비게시 데이터베이스로 만들어 라우팅만 수행하도록 하십시오. 그러나 마스터가 잠금 충돌로 인해 병목 상태가 되면 SQL 계층을 더 이상 확장할 수 없습니다.

확장 전략 및 고려 사항

  • 먼저 마스터 MessageBox 데이터베이스를 업그레이드하고, 문제가 해결되지 않으면 새 컴퓨터를 추가합니다.

  • 1에서 2로 확장하지 않고 SQL MessageBox 데이터베이스를 1에서 3으로 확장합니다. 위의 그림에 "4개 BizTalk Server, 1개 SQL Server 토폴로지"라는 제목의 1개 SQL 서버 토폴로지를 고려하고 SQL 서버가 CPU에 바인딩되어 있다고 가정합니다. 즉, CPU 처리가 병목 현상이라고 가정합니다. 하나의 MessageBox 데이터베이스만 이 토폴로지에 추가하면 마스터 MessageBox에 여전히 CPU를 주로 사용하는 작업이 수행되며 보조 MessageBox 데이터베이스는 사용되지 않습니다. 따라서 배율 인수는 거의 1입니다. Master MessageBox 데이터베이스에서 게시를 사용하지 않도록 설정하고 Master MessageBox 데이터베이스를 라우팅에만 바치면 보조 MessageBox 데이터베이스에서 게시를 수행합니다. 이렇게 해도 보조 MessageBox 데이터베이스가 유일한 게시자가 되고 여전히 병목 상태가 되므로 전체적인 처리량이 늘어나지는 않습니다. 따라서 이 시나리오에서 권장되는 확장 방법은 2개의 보조 MessageBox 데이터베이스를 추가하고 마스터 MessageBox 데이터베이스에서 게시를 사용하지 않도록 설정하는 것입니다.

  • 마스터 MessageBox 데이터베이스에 결국 병목 상태가 발생합니다. 따라서 마스터 MessageBox 데이터베이스를 호스팅하는 실제 컴퓨터는 보다 빠르고 커야 합니다.

  • 네트워크를 통한 데이터 송신 및 관련 DTC 오버헤드를 최소화하려면 전용 드라이브가 있는 동일한 실제 컴퓨터에 MessageBox 데이터베이스를 여러 개 배치하십시오. 동시에 여러 MessageBox 데이터베이스에서 리소스를 공유할 때 이러한 여러 데이터베이스를 보관하는 컴퓨터가 병목 상태가 아닌지 확인해야 합니다.

  • 작업이 게시 MessageBox 데이터베이스 간에 고르게 분산되므로 모든 보조 MessageBox 데이터베이스는 비슷한 하드웨어를 사용해야 합니다.

  • 마스터 MessageBox 데이터베이스가 병목 상태만 아니면 보조 MessageBox 데이터베이스를 확장할 수 있으므로 보조 MessageBox 데이터베이스는 마스터 MessageBox 데이터베이스 서버에서 필요한 것보다 적은 수의 CPU 리소스가 있는 컴퓨터에서 실행될 수 있습니다.

참고 항목

BizTalk Server 계층 확장
BizTalk Server 계층 업그레이드
SQL Server 계층 업그레이드
확장된 수신 호스트
확장된 처리 호스트
확장된 송신 호스트
Windows Server 클러스터를 사용하여 BizTalk Server Hosts2에 고가용성 제공
확장된 데이터베이스
BizTalk Server 데이터베이스 클러스터링