服務器資源監控指標

服務器資源監控指標: 
內存: 
1 UNIX資源監控中指標內存頁交換速率(Paging rate),如果該值偶爾走高,表明當時有線程競爭內存。如果持續很高,則內存可能是瓶頸。也可能是內存訪問命中率低。 

2 Windows資源監控中,如果Process\Private Bytes計數器和Process\Working Set計數器的值在長時間內持續升高,同時Memory\Available bytes計數器的值持續降低,則很可能存在內存泄漏。 
內存資源成爲系統性能的瓶頸的徵兆: 
很高的換頁率(high pageout rate); 
進程進入不活動狀態; 
交換區所有磁盤的活動次數可高; 
可高的全局系統CPU利用率;  
內存不夠出錯(out of memory errors) 
處理器: 
1 UNIX資源監控(Windows操作系統同理)中指標CPU佔用率(CPU utilization),如果該值持續超過95%,表明瓶頸是CPU。可以考慮增加一個處理器或換一個更快的處理器。如果服務器專用於SQL Server,可接受的最大上限是80-85%  
合理使用的範圍在60%至70%。 
2 Windows資源監控中,如果System\Processor Queue Length大於2,而處理器利用率(Processor Time)一直很低,則存在着處理器阻塞。 
CPU資源成爲系統性能的瓶頸的徵兆:  
很慢的響應時間(slow response time)  
CPU空閒時間爲零(zero percent idle CPU)  
過高的用戶佔用CPU時間(high percent user CPU)  
過高的系統佔用CPU時間(high percent system CPU)  
長時間的有很長的運行進程隊列(large run queue size sustained over time) 
磁盤I/O: 
1 UNIX資源監控(Windows操作系統同理)中指標磁盤交換率(Disk rate),如果該參數值一直很高,表明I/O有問題。可考慮更換更快的硬盤系統。 
2 Windows資源監控中,如果 Disk Time和Avg.Disk Queue Length的值很高,而Page Reads/sec頁面讀取操作速率很低,則可能存在磁盤瓶徑。 
I/O資源成爲系統性能的瓶頸的徵兆 : 
過高的磁盤利用率(high disk utilization)  
太長的磁盤等待隊列(large disk queue length)  
等待磁盤I/O的時間所佔的百分率太高(large percentage of time waiting for disk I/O)  
太高的物理I/O速率:large physical I/O rate(not sufficient in itself)  
過低的緩存命中率(low buffer cache hit ratio(not sufficient in itself))  
太長的運行進程隊列,但CPU卻空閒(large run queue with idle CPU) 
4.數據庫服務器: 
SQL Server數據庫: 
1 SQLServer資源監控中指標緩存點擊率(Cache Hit Ratio),該值越高越好。如果持續低於80%,應考慮增加內存。 
2 如果Full Scans/sec(全表掃描/秒)計數器顯示的值比1或2高,則應分析你的查詢以確定是否確實需要全表掃描,以及SQL查詢是否可以被優化。  
3 Number of Deadlocks/sec(死鎖的數量/秒):死鎖對應用程序的可伸縮性非常有害,並且會導致惡劣的用戶體驗。該計數器的值必須爲0。 
4 Lock Requests/sec(鎖請求/秒),通過優化查詢來減少讀取次數,可以減少該計數器的值。 
Oracle數據庫: 
1 如果自由內存接近於0而且庫快存或數據字典快存的命中率小於0.90,那麼需要增加SHARED_POOL_SIZE的大小。 
快存(共享SQL區)和數據字典快存的命中率:  
select(sum(pins-reloads))/sum(pins) from v$librarycache;  
select(sum(gets-getmisses))/sum(gets) from v$rowcache;  
自由內存: select * from v$sgastat where name=’free memory’;  
2 如果數據的緩存命中率小於0.90,那麼需要加大DB_BLOCK_BUFFERS參數的值(單位:塊)。 
緩衝區高速緩存命中率: 
select name,value from v$sysstat where name in (’db block gets’, 
‘consistent gets’,'physical reads’) ; 
Hit Ratio = 1-(physical reads / ( db block gets + consistent gets)) 
3 如果日誌緩衝區申請的值較大,則應加大LOG_BUFFER參數的值。 
日誌緩衝區的申請情況 : 
select name,value from v$sysstat where name = ‘redo log space requests’ ; 
4 如果內存排序命中率小於0.95,則應加大SORT_AREA_SIZE以避免磁盤排序 。 
內存排序命中率 : 
select round((100*b.value)/decode((a.value+b.value), 0, 1, (a.value+b.value)), 2)from v$sysstat a, v$sysstat b where a.name=’sorts (disk)’ and b.name=’sorts (memory)’ 
注:上述SQL Server和Oracle數據庫分析,只是一些簡單、基本的分析,特別是Oracle數據庫的分析和優化,是一門專門的技術,進一步的分析可查相關資料。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章