어댑터 성능에 영향을 주는 구성 매개 변수

이 섹션에서는 BizTalk Server 어댑터의 성능에 영향을 줄 수 있는 구성 설정에 대해 설명합니다.

호스트의 CLR 호스팅 스레드 값

Windows 스레드는 Windows 프로세스에 사용할 수 있는 가장 기본적인 실행 파일 단위이므로, BizTalk 호스트 인스턴스와 연결된 .NET 스레드 풀에 충분한 스레드를 할당하여 스레드 부족 문제를 방지하는 것이 중요합니다. 스레드가 부족하게 되면 요청된 작업을 수행할 만큼 사용 가능한 스레드 수가 충분하지 않아 성능에 부정적인 영향을 미칠 수 있습니다. 이와 함께, 호스트와 연결된 .NET 스레드 풀에 필요한 수보다 많은 스레드가 할당되지 않도록 주의해야 합니다. 호스트와 연결된 .NET 스레드 풀에 너무 많은 스레드를 할당하면 컨텍스트 전환이 늘어나 역시 전반적인 성능에 부정적인 영향을 미칠 수 있습니다. 컨텍스트 전환은 실행 중인 한 개의 스레드에서 다른 스레드로 Windows 커널이 전환될 때 발생하며 이로 인해 CPU 운영 비용이 높아질 수 있습니다.

BizTalk Server 설정 대시보드에서 적절한 값을 구성하여 BizTalk 호스트의 instance 연결된 .NET 스레드 풀에서 사용할 수 있는 Windows 스레드 수를 수정합니다. .NET CLR 값을 수정하는 방법에 대한 자세한 내용은 .NET CLR 설정을 수정하는 방법을 참조하세요.

HTTP 또는 SOAP 어댑터 성능에 영향을 미칠 수 있는 ASP.NET 설정

다음 설정은 HTTP 또는 SOAP 어댑터가 통신하는 웹 응용 프로그램을 호스팅하는 ASP.NET 응용 프로그램에 적용할 수 있습니다. 이 매개 변수는 웹 응용 프로그램을 호스팅하는 서버의 web.config 또는 machine.config 파일에 설정됩니다. HTTP 또는 SOAP 어댑터 송신 포트에서 생성된 로드를 수용하려면 이 설정을 수정합니다. 이러한 설정에 대한 자세한 내용은 ASP.NET 애플리케이션에서 웹 서비스를 호출할 때의 성능 문제를 참조하세요.

매개 변수 구성 파일 섹션 기본값 권장되는 값
minFreeThreads

새 요청을 실행하기 위한 최소 자유 스레드 수입니다. ASP.NET 요청 처리를 완료 하려면 추가 스레드를 필요로 하는 무료이 많은 스레드를 유지 합니다.
<httpRuntime> 8 88 * 웹 응용 프로그램을 호스팅하는 서버의 프로세서 수
minFreeLocalRequestFreeThreads

새 로컬 요청을 실행할 수 있도록 ASP.NET에서 사용 가능한 상태로 유지하는 최소 자유 스레드 수입니다. 일부 요청에서 처리 중에 로컬 호스트에 대한 하위 요청을 발행할 경우 로컬 호스트에서 들어오는 요청에 사용할 수 있도록 이 스레드 수가 예약된 상태로 유지됩니다. 이렇게 하면 웹 서버로의 재귀 재진입으로 인해 발생할 수 있는 교착 상태가 방지됩니다.
<httpRuntime> 4 76 * 웹 애플리케이션을 호스팅하는 서버의 프로세서 수입니다.
executionTimeout

요청이 ASP.NET에서 자동으로 종료되기 전까지 요청 실행이 허용된 최대 시간(초)을 나타냅니다.
<httpRuntime> 90 90
maxconnection

특정 IP 주소에 만들 수 있는 연결 수를 결정합니다.
<connectionManagement> 2

이 설정의 값 2는 HTTP 1.1 사양에 대한 IETF RFC를 준수하며 사용자 시나리오에 적합하지만 높은 처리량에 최적화되지는 않습니다.
12 * 웹 애플리케이션을 호스팅하는 서버의 프로세서 수입니다.
maxWorkerThreads

CPU를 기준으로 프로세스에 사용되는 최대 작업자 스레드 수를 구성합니다.
<processModel> 20 100 참고: 이 값은 서버의 프로세서 수를 암시적으로 곱합니다.
minWorkerThreads <processModel> 1 maxWorkerThreads / 2 참고: minWorkerThreads 매개 변수는 기본적으로 구성 파일에 없습니다. 사용자가 직접 추가해야 합니다. 참고: 이 값은 암시적으로 서버의 프로세서 수를 곱합니다.
maxIoThreads

ASP.NET이 완료 스레드에서 사용하는 수를 제한하기 위해 사용합니다.
<processModel> 20 100

암시적으로 이 값에는 서버의 프로세서 수가 곱해집니다.

웹 서비스를 호스트하는 컴퓨터가 ASP.NET 2.0 이상을 실행하는 경우 Machine.config 파일의 processModel 섹션에서 autoConfig=true 를 설정하여 컴퓨터 구성에 따라 최적의 성능을 얻기 위해 다음 설정을 자동으로 구성할 수 있습니다.

  • maxWorkerThreads 특성입니다.

  • maxIoThreads 특성입니다.

  • httpRuntime 요소의 minFreeThreads 특성입니다.

  • httpRuntime 요소의 minLocalRequestFreeThreads 특성입니다.

  • connectionManagement> 요소(네트워크 설정) 요소의 <maxConnection 특성입니다.

참고

processModel 섹션은 Machine.config 파일 내에서만 설정할 수 있으며 서버에서 실행되는 모든 ASP.NET 애플리케이션에 영향을 줍니다.

processModel에 대한 자세한 내용은 ProcessModelSection 클래스를 참조하세요.

TCP 창 크기를 제어하는 레지스트리 설정

다음 레지스트리 설정은 TCP 창 크기를 제어합니다. 이 크기는 연결 중 버퍼링될 수 있는 수신 데이터 크기(바이트 단위)입니다. 이 매개 변수가 최적 값으로 설정되지 않으면 어댑터 성능에 부정적인 영향을 미칠 수 있습니다. TCP 창 크기를 늘리려면 이 레지스트리 설정을 구현합니다.

경고

레지스트리 편집기를 잘못 사용하면 심각한 문제가 발생하여 운영 체제를 다시 설치해야 할 수도 있습니다. 레지스트리 편집기를 잘못 사용하여 발생하는 문제는 해결하지 못할 수도 있으므로 레지스트리 편집기를 사용할 때는 특별히 주의해야 합니다. 레지스트리를 수정하기 전에는 항상 레지스트리를 백업하고 문제가 발생하면 백업을 복원하는 방법을 알아두십시오.

기본 TCP 창 크기를 늘리려면 다음 단계를 수행합니다.

  1. 시작, 실행을 차례로 클릭한 다음 regedit.exe를 입력하고 확인 을 클릭하여 레지스트리 편집기를 시작합니다.

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\

  2. 매개 변수 키 아래에 표시된 값을 사용하여 다음 DWORD 항목을 만듭니다.

    DWORD 항목 기본값 권장되는 값
    TcpWindowSize

    이 설정에 따라 컴퓨터의 최대 TCP 수신 창 크기가 결정됩니다. 수신 창에는 승인을 받지 않고 보낸 사람이 전송할 수 있는 바이트 수가 지정됩니다. 일반적으로 수신 창 크기가 커지면 고대역폭 네트워크에 대한 성능이 향상됩니다.
    17520 이더넷 MSS(최대 세그먼트 크기)인 1460의 배수로 최대 64240까지 설정합니다. Windows 확장을 사용할 경우 최대 65535로 설정합니다.

    참고

    이러한 변경 내용을 적용하려면 컴퓨터를 다시 시작해야 합니다.

  3. 레지스트리 편집기를 닫습니다.

참고 항목

성능 및 용량 계획