NUMA 하드웨어의 IIS 8.0 멀티코어 크기 조정
호환성
버전 | 참고 |
---|---|
IIS 8.0 | NUMA의 멀티코어 크기 조정은 IIS 8.0에서 도입되었습니다. |
IIS 7.5 | NUMA의 멀티코어 크기 조정은 IIS 7.5에서 지원되지 않았습니다. |
IIS 7.0 | NUMA의 멀티코어 크기 조정은 IIS 7.0에서 지원되지 않았습니다. |
문제
일반적으로 코어 수를 늘리면 성능이 향상됩니다. 그러나 메모리 동기화 비용이 추가 코어를 사용하는 NUMA 하드웨어의 이점보다 크므로 코어 수를 늘리면 성능이 저하되는 경우가 있습니다. IIS 8.0은 NUMA(Non-Uniform-Memory-Access) 하드웨어에서 프로세스를 지능적으로 배포하고 선호하여 이 문제를 해결합니다.
솔루션
Windows Server 2012의 IIS(인터넷 정보 서비스)는 NUMA를 인식하며 IT 관리자에게 최적의 구성을 제공합니다. 다음 섹션에서는 NUMA 하드웨어에서 IIS 8.0을 사용하여 최상의 성능을 달성하기 위한 다양한 구성 옵션에 대해 설명합니다.
IIS는 워크로드를 분할하는 다음 두 가지 방법을 지원합니다.
- 하나의 애플리케이션 풀(예: 웹 정원)에서 여러 작업자 프로세스 실행: 이 모드를 사용하는 경우 기본적으로 애플리케이션 풀은 하나의 작업자 프로세스를 실행하도록 구성됩니다. 성능을 최대화하려면 작업자 프로세스와 NUMA 노드 간에 1:1 선호도가 있도록 NUMA 노드와 동일한 수의 작업자 프로세스를 실행하는 것이 좋습니다. 이 작업은 "최대 작업자 프로세스" AppPoolsetting을 0으로 설정하여 수행할 수 있습니다. 이 설정에서 IIS는 하드웨어에서 사용할 수 있는 NUMA 노드 수를 결정하고 동일한 수의 작업자 프로세스를 시작합니다.
- 단일 워크로드/사이트에서 여러 애플리케이션 풀 실행: 이 구성에서는 워크로드/사이트가 여러 애플리케이션 풀로 나뉩니다. 예를 들어 사이트에는 별도의 애플리케이션 풀에서 실행되도록 구성된 여러 애플리케이션이 포함될 수 있습니다. 효과적으로 이 구성은 워크로드/사이트에 대해 여러 IIS 작업자 프로세스를 실행하고 IIS는 성능을 최대화하기 위해 프로세스를 지능적으로 배포하고 선호합니다.
또한 IIS 작업자 프로세스가 시작되려고 할 때 IIS 8.0에서 가장 최적의 NUMA 노드를 식별하는 방법에는 두 가지가 있습니다.
- 대부분의 사용 가능한 메모리(기본값): 이 방법의 개념은 사용 가능한 메모리가 가장 많은 NUMA 노드가 시작하려는 추가 IIS 작업자 프로세스를 수행하는 데 가장 적합한 노드라는 것입니다. IIS는 각 NUMA 노드의 메모리 소비에 대한 지식을 가지고 있으며 이 정보를 사용하여 IIS 작업자 프로세스를 "부하 분산"합니다.
- Windows: IIS에는 Windows OS에서 이 결정을 내릴 수 있는 옵션도 있습니다. Windows OS는 라운드 로빈을 사용합니다.
마지막으로 IIS 작업자 프로세스에서 NUMA 노드로 스레드를 선호하는 두 가지 방법이 있습니다.
- 소프트 선호도(기본값): 소프트 선호도를 사용하면 다른 NUMA 노드에 주기가 있는 경우 IIS 작업자 프로세스의 스레드가 선호되지 않는 NUMA 노드로 예약될 수 있습니다. 이 방법은 시스템 전체에서 사용 가능한 모든 리소스를 최대화하는 데 도움이 됩니다.
- 하드 선호도: 하드 선호도를 사용하면 시스템의 다른 NUMA 노드에 부하가 있을 수 있는 항목에 관계없이 IIS 작업자 프로세스의 모든 스레드가 위의 디자인을 사용하여 선택한 NUMA 노드에 선호됩니다.
단계별 지침
사전 요구 사항
- IIS는 Windows Server 2012에 설치됩니다.
- IIS 프로세스 모델은 IIS 애플리케이션 풀 구성의 일부입니다. 서버 관리자 설치해야 하는 특정 IIS 기능은 없습니다.
알려진 버그에 대한 해결 방법
현재 이 기능에 대한 알려진 버그가 없습니다.
구성 단계
- IIS 관리자를 엽니다.
- 왼쪽 탐색 창에서 애플리케이션 풀 을 선택합니다.
- 앱 풀을 선택합니다.
- 작업 창에서 고급 설정을 선택합니다.
- 프로세스 모델 그룹에서 최대 작업자 프로세스 설정을 찾습니다.
- 이 값을 0으로 설정합니다.
최적의 NUMA 선택 논리와 선호도 유형도 고급 설정에서 찾을 수 있습니다. 그러나 IIS가 NUMA 하드웨어에서 실행되는 경우에만 표시됩니다.
시나리오
Windows Server 2012로 업그레이드 전후에 NUMA 하드웨어에서 성능 테스트를 실행합니다. 성능 결과를 비교하여 개선 사항을 확인합니다.
요약
Windows Server 2012에서 NUMA 하드웨어 기능에 대한 IIS 멀티코어 크기 조정을 살펴보는 데 성공했습니다.