일반적인 성능카운터

다음은 파일롯 시스템 구성시 서버의 역할별 사이징을 위해 벤치마킹시 모니터링해야 하는 개체들의 내용이다.

서버 역할	많이 요구되는 자원	모니터 해야 할 개체
어플리케이션 서버	메모리, 프로세서	Cache, Memory, Processor, System
백업용 서버	메모리, 네트워크	System, Server, Processor, Network Interface
데이터베이스 서버	디스크, 프로세서, 네트워크	Physical Disk, Logical Disk, Processor, Network Interface, System
도메인 컨트롤러	메모리, 프로세서, 네트워크, 디스크	Memory, Processor, System, Network Interface, protocol counters (TCP, UDP, ICMP, IP, NBT Connection, NetBEUI, NetBEUI Resource, NetBIOS), Physical Disk, Logical Disk
메시징 서버	프로세서, 디스크, 메모리	Memory, Cache, Processor, System, Physical Disk, Logical Disk
웹 서버	디스크, 캐시, 프로세서, 메모리, 네트워크 구성요소	Cache, Memory, Processor, Physical Disk, Logical Disk, Network Interface

다음은 파일롯 시스템 구성시 자원의 사용현황을 파악하기 위한 성능 카운터 개체이다.

자원	모니터 목적	카운터 개체
Disk	사용현황 분석	Physical Disk\Disk Reads/sec Physical Disk\Disk Writes/sec Physical Disk\%Idle Time Physical Disk\Average Disk Sec\Transfer Logical Disk\% Free Space
Memory	사용현황 분석	Memory\Available Bytes Memory\Cache Bytes Memory\%Committed Bytes in Use Memory\Pages input/s
Processor	사용현황 분석	Processor\% Processor Time (all instances) Processor\% DPC Time Processor\% Interrupt Time Processor\% Privileged Time

다음은 파일롯 시스템 구성시 자원의 병목 지점을 파악하기 위한 성능 카운터 개체이다.

자원	모니터 목적	카운터 개체
Disk	병목 지점 파악	Physical Disk\ Avg. Disk Queue Length (all instances)
Memory	병목 지점 파악	Memory\ Pages/sec Memory\ Page Reads/sec Memory\ Transition Faults/sec Memory\ Pool Paged Bytes Memory\ Pool Nonpaged Bytes 다음의 카운트 개체들은 메모리 개체에 포함되어 있지는 않지만 메모리 분석에 도움이 되는 개체들입니다. Paging File\ % Usage object (all instances) Cache\ Data Map Hits % Server\ Pool Paged Bytes and Server\Pool Nonpaged Bytes
Processor	병목 지점 파악	System\ Processor Queue Length (all instances) Processor\ Interrupts/sec System\Context switches/sec

Internet Information Server 성능 카운터

다음은 파일롯 시스템 구성시 자원의 사용현황을 파악하기 위한 성능 카운터 개체이다.

정확한 Sizing을 위해서는 반드시 파일럿 벤치마크를 통해 검증을 해야 한다.

자원	성능 카운터	임계값	비고
Memory	Free System Page Table Entries	60000	Hard limit
Memory	Pool Nonpaged Bytes	200 MB	Limit on 1GB system is 216031232
Memory	Pool Paged Bytes	200 MB	Limit on 1GB system is 205520896
Memory	Available MBytes	10% of Physical Memory
Process	Thread Count (All)	Watch for increase	High number may be associated with increased context switch rate
Process	Handle Count (All)	Watch for increase	Possible leak if keeps increasing
Process	Virtual Bytes (IIS Worker Processes)	< 70% of Process Address Space	Try limiting inetinfo cache size if exceeded
Processor	%Processor Time	< 70%
Processor	% Interrupt Time	< 5%	May be higher for network intensive sites
Processor	Interrupts/Sec	< 1500 /processor
Processor	%Privileged Time		Dependant on workload
Processor	%User Time		Dependant on workload
Processor	%DPC Time	< 10%
System	Context Switches/Sec	< 25 / request	If high with low throughput and low CPU usage - limit no. of threads
System	Processor Queue Length	< 2 / Processor
System	System Calls/Sec	< 50 / request
System	Processes	Watch for increase
System	Threads	Watch for increase
Network Interface	Bytes Total/sec (All)	< 50% of NIC capacity
Physical Disk	Avg Disk Queue Length (All)	< 4 per platter	Assuming server class disks
Physical Disk	Disk Read/sec (All)	Together, less than 100 per platter
Physical Disk	Disk Write/sec (All)
Physical Disk	Split I/O /sec (All)	< 5
Active Server Pages	Errors/sec
Active Server Pages	Requests/sec		Dependant on workload
Active Server Pages	Template Cache Hit Rate	> 70%	Workload dependent
Web Service	Get Requests/sec		Dependant on workload
Web Service	Not Found Errors/Sec		Too many indicate a possible connectivity or data problem
Web Service	CGI Requests/sec		If high - convert CGI to ISAPI.
Web Service	ISAPI Extension Requests/sec		Dependant on workload
Web Service	Post Requests/sec
Web Service	Put Requests/sec
Web Service	Copy Requests/sec
Web Service	Head Requests/sec
Web Service	Move requests/sec
Web Service Cache	Kernel: URI Cache Hits %		Turn off cache if hit rate is too low (~20% or less) for workload

SQL Server 성능 카운터

다음은 파일롯 시스템 구성시 자원의 사용현황을 파악하기 위한 성능 카운터 개체이다.

정확한 Sizing을 위해서는 반드시 파일럿 벤치마크를 통해 검증을 해야 한다.

자원	성능 카운터	임계값	비고
System	Context Switches/Sec	< 25 / request	If high with low throughput and low CPU usage - limit no. of threads
System	Processor Queue Length	< 2 / Processor
Processor	%Processor Time	< 70%
Processor	%Interrupt Time	< 5%
Memory	Page/sec	< 20
Memory	Available Bytes	10% of Physical Memory
Memory	Committed Bytes		물리적 메모리보다 클 경우, RAM 추가
SQL Server : Cache Manager	CacheHitRatio	>80%
SQL Server : Buffer Manager	Free Buffers	>0
SQL Server : Buffer Manager	Page Reads/sec		지속적으로 높게 나타나면 메모리 부족으로 과도한 Page Fault 유발
SQL Server : Buffer Manager	Lazy Wirtes/sec		지속적으로 높게 나타나면 메모리 병목
SQL Server : Buffer Manager	Stolen page count	Full page, procedure cache page	실제 데이터 페이지
SQL Server : Memory Manager	Memory Grants Pending
SQL Server : Memory Manager	Connection memory		Connection당 24K로 메모리에 비래해서 계산
SQL Server : Memory Manager	Lock memory		Lock당 64K
SQL Server : Memory Manager	Total Server memory		SQL Server가 사용중인 메모리
SQL Server : Memory Manager	Target Server Memory		SQL Server에 할당한 메모리
SQL Server : Locks	Number of deadlocks
SQL Server : SQL statistics	SQL Compilations

항목	설명	적용 방법
동시 접속 통계 트랜잭션 수	응용 프로그램에 동시적 접속하여 트랜잭션을 발생시키는 수	동시 접속 트랜잭션수 * 0.3MB
운영 체제 영역	운영 체제 (커널, 기본 서비스, 디스크 관리)를 수행하기 위한 메모리 영역. 64 ~ 256 MB 정도 고려	128 MB
네트워크 서비스 영역	네트워크 환경에서 통신하기 위한 서비스 및 사용자 접속 정보를 위한 메모리 영역. 각 사용자 별로 0.4 ~ 0.8 MB 필요함.	동시 접속 통계 트랜잭션 수 * 0.5 MB
클러스터 서비스 영역	클러스터 서비스를 위한 메모리 영역. 64~256 MB 정도 고려.	128 MB
DBMS 서비스 영역	DBMS 서비스를 수행하기 위한 서비스 메모리 영역. 64 ~ 256 MB 정도 고려.	128 MB
DBMS 접속 영역	DBMS에 접속한 연결 정보를 위한 메모리 영역. 각 사용자 별로 0.5 ~ 1.5 MB 정도 필요함	동시 접속 통계 트랜잭션 수 * 1 MB
DBMS 공유 영역 보정 비율	DBMS 시스템의 공유 영역을 변화 보정 비율. 20~50% 정도 고려.	30%
기타 서비스 영역	백신, 파이어월 S/W, 시스템 관리 S/W, 성능 관리 도구 등등의 서비스를 위한 메모리 영역. 64 ~ 128 MB 정도 고려.	64 MB
버퍼 캐시 보정 비율	서버의 성능 향상을 위한 버퍼 영역. 20 ~ 40% 정도 고려	30%
메모리 예비율	향후 업무 증가를 위한 메모리 예비율. 20 ~ 40% 정도 고려	20%

산출 공식: 메모리 (MB) =

( 운영 체제 영역 + 네크워크 서비스 영역 + 클러스터 서비스 영역 + DBMS 서비스 영역 + DBMS 접속 영역 + 기타 서비스 영역 ) * DBMS 공유 영역 보정 비율 * 버퍼 캐시 보정 비율 * 메모리 예비율