IIS 디버그 진단 도구를 사용 하 여 IIS 프로세스의 메모리 누수 문제를 해결 하는 방법

기술 자료 번역 기술 자료 번역
기술 자료: 919790 - 이 문서가 적용되는 제품 보기.
모두 확대 | 모두 축소

이 페이지에서

소개

과도 한 메모리 IIS 프로세스를 사용 하면 메모리 누수가 Microsoft 인터넷 정보 서비스 (IIS)에서 발생할 수 있습니다. Dllhost.exe, Inetinfo.exe, w3wp.exe는 IIS 프로세스의 예입니다. IIS 정적 콘텐츠와 동적 캐시 콘텐츠입니다. IIS 프로세스는 일반적으로 사용 가능한 실제 메모리의 50%까지 사용합니다. 이 메모리 사용량 미터법에 모든 IIS 프로세스의 총 각 IIS 프로세스에 작업과 관련이 있습니다. 메모리 문제를 확인 하려면이 정보 및 성능 모니터를 사용할 수 있습니다.

또한, 과도 한 메모리 IIS 프로세스를 사용 하는 경우 다음과 같은 현상이 발생할 수 있습니다.
  • Windows 작업 관리자에서의 메모리 사용 프로세스가 과도 한 메모리를 소모 하는 열을 나타냅니다.
  • 간의 차이 증가 하는 성능 모니터에는 전용 바이트 카운터 및 가상 바이트 카운터에 프로세스 개체입니다.
  • IIS 6.0 이상에서 32 비트 IIS 프로세스 최대 1.3 gb의 가상 메모리를 사용합니다. 메모리 재활용 설정 되어 있으면 다음과 유사한 이벤트가 기록 됩니다.

    이벤트 유형: 정보
    이벤트 원본: W3SVC
    이벤트 범주: 없음
    이벤트 ID: 1077
    날짜: 날짜
    시간: 시간
    사용자: n/A
    컴퓨터: 컴퓨터 이름
    설명:
    '1234' 서비스 제공 응용 프로그램 풀 'DefaultAppPool' 프로세스 id의 작업자 프로세스가 가상 메모리 제한에 도달 했으므로 재생을 요청 했습니다.

  • 메모리 재활용 설정 되어 있지 않으면 32 비트 IIS 프로세스 최대 1.3 GB의 가상 메모리를 사용 하 여 및 결국 응답을 중지 합니다. 그런 다음 다음과 유사한 이벤트가 기록 됩니다.

    이벤트 종류: 경고
    이벤트 원본: W3SVC
    이벤트 범주: 없음
    이벤트 ID: 1009
    날짜:날짜
    시간:시간
    사용자: n/A
    컴퓨터:컴퓨터 이름
    설명:
    응용 프로그램 풀 'DefaultAppPool' 처리 하는 프로세스가 예기치 않게 종료 되었습니다. 프로세스 id는 '1234'입니다. 프로세스 종료 코드는 '0xc0000005'입니다.

    에 대 한 자세한 내용은 http://support.microsoft.com에 있는 도움말 및 지원 센터를 참조 하십시오.

추가 정보

과도 한 메모리 IIS 프로세스를 사용 하는 경우 IIS 디버그 진단 도구를 사용 하는 메모리 누수를 발생 시킨 처리 되지 않은 메모리 할당 문제를 해결 하려면. LeakTrack.dll 파일 삽입 하 고 다음에 대 한 메모리 누수를 모니터링 해야 합니다. 누수를 재현할 즉시 메모리 덤프 파일이 생성 됩니다. 메모리 덤프 파일을 메모리 누수 정보가 포함 되어 있습니다.

IIS 디버그 진단 도구를 사용 하 여 과도 한 메모리를 소모 하는 IIS 프로세스 문제를 해결 하려면 다음이 단계를 수행 합니다.

1 단계: 다운로드 및 IIS 디버그 진단 도구 v 1.2를 설치 합니다.

다음 파일은 Microsoft에서 다운로드할 수 다운로드 센터:

IIS 디버그 진단 v1.2
http://www.microsoft.com/download/en/details.aspx?id=26798?


단계 2: 메모리 누수가 발생 하기 전에 성능 로깅을 설정합니다

  1. 클릭 시작을 가리키는 프로그램을 가리키는디버그 진단 도구를 클릭 하 고 다음을 누릅니다 디버그 진단 도구 1.2.
  2. 클릭 도구를 클릭 하 고 다음을 누릅니다 옵션 및 설정.
  3. 클릭 하 여 성능 로그 탭에서 클릭 성능 카운터 데이터 로깅 사용를 클릭 하 고 다음을 누릅니다 확인.
참고 메모리 누수를 재현할 때 데이터 샘플링 간격 및 모니터링 시작 시간 달라 집니다. 로그 크기 때문에 서버 처리량을 초과 하지 않고 필요한 정보를 얻을 수 있는 지원 전문가와 제대로 작동 하는지 확인 합니다.

3 단계: "메모리 및 핸들 누수" 규칙 만들기

  1. 클릭 시작을 가리키는 프로그램을 가리키는 디버그 진단 도구를 클릭 하 고 다음을 누릅니다 디버그 진단 도구 1.2.
  2. 규칙 탭에서 클릭 규칙 추가.
  3. 클릭네이티브 (비.Net) 메모리 및 핸들 누수를 클릭 하 고 다음을 누릅니다 다음.
  4. 메모리 누수가 있는 프로세스를 선택 하 고을 클릭합니다 다음.
  5. 누수를 구성 합니다.규칙 대화 상자에서 입력 하거나 선택 준비 시간에는 준비 시간 상자를 닫습니다.

    참고 선택 하는 문제를 즉시 재현할 경우 클릭을 메모리 규칙이 즉시 활성화 되 면 추적을 시작 합니다. 확인란입니다.
  6. 구성...Userdump 세대에서 섹션을 하 고 있는지 확인을 자동 생성 충돌이 규칙 userdump 예기치 않은 프로세스 종료를 가져오려면확인란을 선택 합니다. 얼마나 많은 메모리 사용 후 메모리 덤프를 만들도록 구성할 수도 있습니다.
  7. 규칙 완료 상자에서 입력 하거나 문제를 재현 하는 데 필요한 시간을 선택 합니다.

    참고 지정 된 시간이 끝날 때 덤프 파일이 만들어집니다.
  8. 클릭 다음를 클릭 하 고 다음을 누릅니다 마침.

4 단계: 수동으로 데이터를 얻을

  1. 클릭 시작을 가리키는 프로그램을 가리키는 디버그 진단 도구를 클릭 하 고 다음을 누릅니다 디버그 진단 도구 1.2.
  2. 클릭 하 여 프로세스 탭에서 클릭 하 고을 클릭합니다 하는 프로세스를 마우스 오른쪽 단추로 클릭 누수에 대 한 모니터링.
  3. 누수를 재현 하는 경우 단계 4b 프로세스를 마우스 오른쪽 단추로 누른 다음 전체 Userdump 만들기.
참고 상태가 활성 인지 확인할 수 있습니다. 또한 메모리 덤프 파일을 만들 때마다 Userdump 횟수 카운터 값을 늘리십시오.

5 단계: 메모리 덤프 파일이 완료 된 후에 성능 로깅 중지

  1. 클릭 시작을 가리키는 프로그램을 가리키는 디버그 진단 도구를 클릭 하 고 다음을 누릅니다 디버그 진단 도구 1.2.
  2. 클릭 도구를 클릭 하 고 다음을 누릅니다 옵션 및 설정.
  3. 클릭 하 여 성능 로그 탭에서 클릭 성능 카운터 데이터 로깅 사용 안 함를 클릭 하 고 다음을 누릅니다 확인.

6 단계: 메모리 덤프 파일을 분석 합니다.

  1. 클릭 시작를 클릭 실행디버그 진단 도구의 경로 입력 한 다음 확인.

    참고 기본적으로 디버그 진단 도구는 C:\Program Files\DebugDiag 폴더에 있습니다.
  2. 고급 분석 탭에서 클릭 데이터 파일 추가.
  3. 파일을 찾아 누른 다음 덤프 파일을 분석 하 고을 클릭 하 고 원하는 열기.
  4. 고급 분석탭에서 클릭메모리 압력 분석기를 클릭 하 고 다음을 누릅니다 분석 시작.
  5. Microsoft Internet Explorer 표시 되는 보고서를 검토 합니다. 이 보고서의 복사본을 \DebugDiag\Reports 폴더에도 저장 됩니다.

7 단계: 사용자 지정.dll 파일을 사용 하는 경우 "기호 검색 경로 대 한 분석" 경로 또는 "기호 검색 경로 대 한 디버깅" 경로 추가

  1. 클릭 도구를 클릭 하 고 다음을 누릅니다 옵션 및 설정.
  2. 기호 검색 경로 분석 상자 또는 디버깅을 위한 기호 검색 경로 상자, 적절 한 경로 입력 하 고을 클릭합니다 확인.

속성

기술 자료: 919790 - 마지막 검토: 2012년 11월 30일 금요일 - 수정: 2.0
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft Internet Information Services 6.0
  • Microsoft Internet Information Services 7.0
  • Microsoft Internet Information Services 7.5
키워드:?
kbinfo kbhowto kbmt KB919790 KbMtko
기계 번역된 문서
중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.
이 문서의 영문 버전 보기:919790

피드백 보내기

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com