일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- SQL Server 2012R2 FCI
- MSCS on VMWare
- failover cluster
- windbg
- 클러스터
- 인문고전
- Windows Server 2008
- windows update
- Xperf
- dsquery
- SQL Server 2008
- LiveKD
- Hyper-V
- 안철수
- iSCSI target
- 터키여행
- Windows Server 2016
- FTP7.5
- windows media service
- nonpaged pool
- windows debugging tool
- 프로세스 CPU 사용량
- Session space
- Windows Server 2016 Hyper-v Cluster
- 작업관리자
- cluster node as Domain controller
- paged pool
- Local TempDB
- ftp7.5 장애조치 클러스터
- Nested VM
- Today
- Total
류짱:Beyond MySelf
IIS 웹 서버의 성능 카운터 체크리스트 본문
IIS 성능 모니터 관련 내용을 찾다가 좋은 글을 찾아서 그대로 copy 해서 올립니다. 아래 내용 말고도 업무에 참고 할 만한 많은 내용들이 있네요.....
http://blogs.msdn.com/b/mermaid207/archive/2008/11/21/iis-performance-counter-checklist.aspx
IIS 웹 서버의 성능에 영향을 줄 수 있는 대표적인 리소스에는 processor, process, physical, network 이 있습니다.여기서는 각각의 리소스 사용을 확인하기 위해 살펴보아야 할 성능 카운터항목은 무엇이며, 각 카운터가 의미하는 바가 무엇 인지와 각 카운터의 병목을 판단할 수 있는 임계치 값에 대해서 알아보겠습니다.
1. Memory
메모리 성능 카운터는 IIS 웹 서버의 성능 문제가 발생했을때 가장 기본적으로 살펴보아야 할 요소입니다. 따라서, 현재 메모리가 충분한지 판단하고 사용 상태를 보는 것이 중요합니다. 메모리와 관련된 성능 병목이 있는지 확인하기 위해서는 다음 카운터를 살펴보아야 합니다.
Memory |
Available Bytes Committed Bytes Page Reads/sec |
Paging File |
%Usage |
각 항목이 의미하는 바는 다음과 같습니다.
Memory / Available Bytes
현재 프로세스에서 사용할 수 있는 메모리의 바이트 수를 의미합니다. 다시말하면, 사용 가능한RAM이 얼만큼 남았는지 보여주는 카운터입니다. 이 값의 임계치는 전체 메모리 크기의 5% 이하일 때 입니다.
Memory / Committed Bytes
커밋된 가상 메모리의 양을 바이트 단위로 나타낸 것입니다. 커밋된 메모리란 디스크 페이징 파일에 예약된 공간이 있는 실제 메모리입니다. 이는 Available Bytes와 반비례 합니다.
Memory : Page Reads/sec
프로세스가 메모리의 페이지를 요청하는데 시스템이 요청한 위치에서 해당 페이지를 찾을 수 없으면 페이지 부재가 발생합니다. 요청한 페이지가 메모리의 다른 위치에 있을 경우는 대부분의 프로세서가 큰 영향없이 처리할 수 있습니다. 하지만, 메모리가 아닌 디스크에서 페이지를 검색해야 할 경우 큰 지연 현상이 발생할 수 있습니다. Page Reads/sec는 이러한 페이지 부재를 해결하기 위해 디스크를 읽는 횟수를 의미합니다.
Paging File : %Usage
현재 사용중인 페이징 파일의 백분율을 말합니다. 이 수치가 100%에 도달하게 되면 페이징 파일을 늘리거나 RAM을 더 추가시켜야 함을 의미합니다.
2. Processor
하나 이상의 프로세스가 프로세서 시간의 대부분을 사용할 경우 프로세서의 병목 현상이 발생할 수 있습니다. 이 경우 실행을 준비하고 있는 프로세스의 쓰레드가 프로세서를 사용할 수 있을 때까지 대기열에서 대기하게 됩니다.
Processor |
%Processor Time %Privileged Time |
Process |
%Processor Time |
System |
Processor Queue Length |
각 항목이 의미하는 바는 다음과 같습니다.
Processor / %Processor Time
모든 프로세스 스레드가 프로세서를 사용하여 명령을 실행하는 데 경과된 시간을 백분율로 나타낸 값입니다. 일반적으로 70% 이상이 사용되고 있다면 과부하라고 판단할 수 있습니다.
Processor / %Privileged Time
%Privileged Time 이란 프로세서가 특권 모드(운영 체제 구성 요소 및 하드웨어 디바이스 드라이버를 위해 만든 처리 모드)로 실행된 시간을 백분율로 나타낸 값입니다. 반면, %User Time는 프로세서가 사용자 모드로 실행된 시간을 백분율로 나타낸 값을 말합니다. 이 값이 높으면 서버에서 응용 프로그램이 많이 실행되고 있음을 나타냅니다. 추가적으로, %Processor Time 은 %Privileged Time 과 %User Time을 합한 값을 의미합니다.
Process / %Processor Time
모든 프로세스 스레드가 프로세서를 사용하여 명령을 실행하는 데 경과된 시간을 백분율로 나타낸 값입니다.
System / Processor Queue Length
CPU큐에서 현재 실행이 되고 있지 않고 대기하고 있는 쓰레드의 수입니다. 일반적으로 이 값이 일정 기간 동안 CPU 수 x 2보다 크다면 서버의 프로세서 성능이 부족하다는 것을 말합니다..
3. Physical Disk
디스크는 서버에서 프로그램 및 데이터를 저장하고 처리하므로 디스크 사용량 및 속도에 영향을 미치는 병목 현상은 서버의 전체적인 성능에 큰 영향을 줍니다.
Physical Disk |
%Disk Time Average Disk Queue Length |
각 항목이 의미하는 바는 다음과 같습니다.
Physical Disk / %Disk Time
선택한 디스크 드라이브가 읽기 또는 쓰기 요청을 처리하는데 사용된 시간을 백분율로 나타낸 것입니다. 이 카운터가 100%가 되면 디스크 성능 상에 문제가 있음을 의미합니다.
Physical Disk / Average Disk Queue Length
디스크가 읽기와 쓰기 요청을 수용할 정도로 빠르지 않으면 해당 요청은 대기열에 넣게 됩니다. 여기에서 이 값이 0보다 크면 디스크 자체에 병목 현상이 있음을 의미합니다.
4. Network
네트워크 병목 현상은 네트워크에서 데이터를 송수신하는 서버의 성능에 영향을 미칩니다. 서버의 네트워크 카드에 문제가 있을 수 있거나, 네트워크가 포화 상태여서 분할해야 할 수 있습니다. 다음 카운터를 사용하여 네트워크 병목 현상을 진단할 수 있습니다.
Network Interface |
Bytes Total/sec Output Queue Length |
Web service |
Bytes Total/sec |
각 항목이 의미하는 바는 다음과 같습니다.
Network Interface / Bytes Total/Sec
네트워크 인터페이스에서 주고 받는 초당 총 데이터의 수(Bytes) 또는 속도를 말합니다. 사용 가능한 대역폭과 이 값을 비교하면 발생할 수 있는 네트워크 병목 상태를 명확하게 표시할 수 있습니다. 일반적으로 바이트 수/초는 사용 가능한 총 대역폭의 50% 이하로 유지해야 합니다.
Network Interface / Output Queue Length
출력 패킷 큐의 길이를 의미하며, 이 값이 0보다 크면 네트워크 병목 현상을 의심해 볼 수 있습니다.
Web Service / Bytes Total/sec
웹 서버에서 보내고 받은 바이트의 합계를 표시합니다.