다음을 통해 공유


런타임 프로파일링

업데이트: 2007년 11월

프로파일링은 개발 또는 배포 시나리오에서 성능 데이터를 수집하는 방법입니다. 이 단원은 응용 프로그램 성능에 관한 정보를 얻으려는 개발자 및 시스템 관리자에게 유용합니다.

성능 모니터(Perfmon.exe)를 사용하여 성능 추적

성능 모니터(Windows Vista의 안정성 및 성능 모니터)는 .NET Framework 응용 프로그램을 프로파일링하는 데 사용할 수 있는 가장 간편한 도구로, 공용 언어 런타임 및 Windows SDK(소프트웨어 개발 키트)와 함께 설치된 .NET 성능 카운터에서 찾은 데이터를 그래픽으로 표시합니다. 이들 카운터는 메모리 관리부터 JIT(Just-In-Time) 컴파일러 성능에 이르기까지 모든 작업을 모니터링하는 데 사용할 수 있습니다. 또한 응용 프로그램에서 사용하는 리소스에 대해 알려주는데, 이는 응용 프로그램의 성능을 간접적으로 측정하는 것입니다. 응용 프로그램 내부의 작업 방법을 이해하려면 응용 프로그램 성능을 직접 측정하는 것보다 이들 카운터를 사용하십시오.

Perfmon.exe를 실행하려면

  1. 명령 프롬프트에 perfmon을 입력합니다. 성능 콘솔 창이 나타납니다.

  2. 도구 모음에서 추가 아이콘(더하기 기호)이 있는 경우 클릭합니다. 해당 아이콘이 없으면 모니터 창을 마우스 오른쪽 단추로 클릭하고 카운터 추가 옵션을 선택합니다. 그러면 카운터 추가 대화 상자가 열립니다.

  3. 보려는 성능 카운터를 선택합니다. .NET 응용 프로그램의 경우에는 메모리 관리용 카운터(.NET CLR Memory), 상호 운용성용 카운터(.NET CLR Interop), 예외 처리용 카운터(.NET CLR Exceptions), 다중 스레딩용 카운터(.NET CLR LocksAndThreads) 등의 여러 카운터가 미리 정의되어 있습니다.

참고

NT 성능 콘솔이 실행되는 동안 새 성능 카운터를 설치한 경우 새 카운터를 표시하려면 성능 콘솔을 중지했다가 다시 시작하십시오.

한 영역이나 원격 공유에 있는 어셈블리를 프로파일링하려면 원격 어셈블리가 성능 카운터를 실행하는 컴퓨터에 대해 완전한 신뢰를 가지고 있는지 확인해야 합니다. 어셈블리가 만족할 만한 신뢰를 가지고 있지 않을 경우 성능 카운터는 작동되지 않습니다. 다른 영역에 신뢰를 부여하는 방법에 대한 자세한 내용은 코드 액세스 보안 정책 도구(Caspol.exe)를 참조하십시오.

성능 카운터를 프로그래밍 방식으로 읽기 및 만들기

.NET Framework에서 제공하는 클래스를 사용하면 성능 콘솔을 통해 액세스할 수 있는 성능 정보에 프로그래밍 방식으로 액세스할 수 있으며 사용자 지정 성능 카운터를 만들 수도 있습니다. 다음 표에서는 .NET Framework에서 제공하는 일부 성능 모니터링 클래스에 대해 설명합니다.

클래스

설명

System.Diagnostics.PerformanceCounter

Windows NT 성능 카운터 구성 요소를 표시합니다. 기존의 미리 정의되었거나 사용자 지정 카운터를 읽고 사용자 지정 카운터에 성능 데이터를 게시하는(쓰는) 데 사용합니다.

System.Diagnostics.PerformanceCounterCategory

컴퓨터에서 카운터 및 카운터의 범주와 상호 작용하기 위한 다양한 방법을 제공합니다.

System.Diagnostics.PerformanceCounterInstaller

PerformanceCounter 구성 요소에 설치 관리자를 지정합니다.

System.Diagnostics.PerformanceCounterType

PerformanceCounter에 대한 NextValue 메서드를 계산하는 수식을 지정합니다.

참고 항목

개념

ASP.NET의 성능 카운터

보안 정책 모델

기타 리소스

.NET Framework의 성능 카운터