동적 유휴 임계값

작성자: 월터 올리버

소개

Windows Server® 2008 R2가 페이징을 많이 시작하면(1.5x ram일 수 있음) HTTP 요청의 응답 시간이 중단됩니다. 이는 공유 호스팅 시나리오에서 특히 일반적입니다. IIS 7 이상의 기능을 사용하면 페이지 파일 사용량(총 커밋)이 작업자 프로세스 유휴 시간 제한에 영향을 주므로 메모리가 할당될 때 요청 응답 시간의 저하를 줄일 수 있습니다.

기본적으로 유휴 시간 제한은 20분입니다. 이 시간 제한 값은 WAS(Windows Process Activation Service)에 의해 구성됩니다. 현재 유휴 시간 제한 값이 WAS 구성 값보다 크면 작업자 프로세스가 종료를 시작합니다.

IIS dynamicIdleThreshold 속성을 사용하면 구성 가능한 메모리 제한에 도달할 때 관리자가 이 유휴 시간 제한을 동적으로 줄일 수 있습니다. 설정의 단위는 "커밋된 RAM의%"입니다. 공유 호스팅 테스트에서 최대 성능은 130에 도달했습니다. 설정의 80% 도달하면 유휴 시간 제한이 크게 줄어들기 시작합니다.

dynamicIdleThreshold를 구성하려면

  • 이 속성을 특정 값(예: 130%)으로 설정하려면 명령 프롬프트를 열고 다음을 실행합니다.
%windir%\system32\inetsrv\appcmd set config -section:system.applicationHost/webLimits -dynamicIdleThreshold:130

IIS PowerShell 공급자를 사용하여 dynamicIdleThreshold를 구성하려면

PowerShell 프롬프트를 열고 다음을 실행합니다.

set-webconfigurationproperty /system.applicationHost/webLimits -name dynamicIdleThreshold -value 130

이벤트 로그 항목

다음은 WAS에서 생성할 수 있는 이벤트 로그 항목 중 일부에 대해 설명합니다.

구성된 메모리 임계값의% 80개에 도달했습니다.

이벤트 로그 ID 수준 Message
5192 Informational 커밋된 메모리 양이 수요 시작 제한에 근접하고 있습니다. WAS(Windows Process Activation Service)는 모든 작업자 프로세스에 대한 유휴 시간 제한 값을 감소하기 시작합니다. 작업자 프로세스는 구성된 시간 전에 유휴 상태가 시작될 수 있습니다. 현재 실제 메모리 사용량: '%2' MB, 현재 실제 메모리 사용 없음: '%3' MB.

구성된 메모리 임계값의% 90개에 도달했습니다.

이벤트 로그 ID 수준 Message
5193 경고 커밋된 메모리의 양이 구성된 제한에 가깝거나 그 크기입니다. WAS(Windows Process Activation Service)는 작업자 프로세스에 대한 유휴 시간 제한 값을 적극적으로 감소합니다. 작업자 프로세스는 구성된 시간 전에 유휴 상태가 시작될 수 있습니다. 현재 실제 메모리 사용량: '%2' MB, 현재 실제 메모리 사용 없음: '%3' MB.

구성된 메모리 임계값의 75% 다시 회복됨

이벤트 로그 ID 수준 Message
5194 Informational 커밋된 메모리 양이 높은 부하 수준 아래로 떨어졌으므로 WAS(Windows Process Activation Service)는 작업자 프로세스의 유휴 시간 제한 값을 원래 설정으로 다시 설정합니다. 현재 실제 메모리 사용량: '%2' MB, 현재 실제 메모리 사용 없음: '%3' MB.

새 작업자 프로세스 유휴 시간 제한 이벤트 로그 메시지

시스템이 80%에서 100% 사이의 dynamicIdleThreshold 범위에서 작동 중일 때 작업자 프로세스가 타임아웃되면 WAS는 다음 이벤트 로그 오류 메시지를 기록합니다. dynamicIdleThreshold 백분율이 80%경우 이벤트 로그 메시지는 동일하게 유지됩니다<.

이벤트 로그 ID 수준 Message
5195 Informational 프로세스 ID가 '%1'서비스 애플리케이션 풀 '%2'인 작업자 프로세스가 비활성으로 인해 종료되었습니다. 시스템이 부하가 높고 이 작업자 프로세스의 유휴 시간 제한이 원래 '%3' 분에서 '%4' 분으로 감소했습니다. 필요한 경우 새 작업자 프로세스가 시작됩니다.