細數(shù)十個最令人頭疼的性能瓶頸
原創(chuàng)【51CTO 11月16日外電頭條】當你聽到“性能瓶頸”這個名詞,馬上出現(xiàn)在你腦海中的形象應該是CPU、內(nèi)存、磁盤和網(wǎng)絡。不可否認,這些是尋找性能問題所在很好的出發(fā)點,但是它們并不是所有性能問題唯一的聚集點。以下我們將列出另外六個問題可能潛在的地方,當你在出現(xiàn)性能故障的時候就可以對其進行一一排除。有時候,知道問題的根源所在可以很好地防止你的個人系統(tǒng)崩潰。
請注意,以下排序不分先后。
51CTO推薦專題:Linux監(jiān)控工具的展覽館
1.CPU
CPU是電腦進行計算和指令操作的中樞。
CPU可以處理數(shù)以百萬計的計算和指令,但是在這些操作超過負荷的時候,它的性能可能就會受到影響。當CPU支持大于75%的運算的時候,整個系統(tǒng)的運行速度就會減緩。CPU需要一些空間來承載不定時的數(shù)據(jù)沖擊,在這個時候,工作負載可能會在很短的時間內(nèi)達到100%。CPU負載是性能瓶頸的一個常見來源。
推薦閱讀:Linux系統(tǒng)監(jiān)控工具之vmstat詳解
2.內(nèi)存
關于內(nèi)存的常規(guī)經(jīng)驗法則是“增加再增加”。當性能問題指向內(nèi)存的時候,一般的共識是,增加更多的內(nèi)存。不過,這種做法只能在短期內(nèi)有效。其實,當性能瓶頸指向內(nèi)存的時候,往往是因為欠缺的軟件設計(內(nèi)存泄露)或者其它的系統(tǒng)缺陷,只不過其表現(xiàn)為內(nèi)存問題。解決內(nèi)存性能問題的關鍵在于要在嘗試增加內(nèi)存之前找到真正的問題根源所在。
相關閱讀:Linux系統(tǒng)內(nèi)存監(jiān)控全面講解:free命令
3.存儲
磁盤速度、RAID類型、存儲類型和控制器技術這些結合在一起就產(chǎn)生了我們所認識的磁盤I/O。磁盤I/O是系統(tǒng)管理員和用戶們普遍焦慮的性能問題來源。這里有實際和物理的性能限制,即使是使用現(xiàn)在***的磁盤技術也不例外。當在磁盤上結合和分離工作負載的時候,請使用***做法。
推薦閱讀:Linux系統(tǒng)監(jiān)控之磁盤I/O篇
4.網(wǎng)絡
網(wǎng)絡往往被大家認為是一種常見的性能瓶頸來源,但是事實上并非如此。除非有一個網(wǎng)絡組件發(fā)生硬件故障,比如交換機端口損壞、電纜損壞、網(wǎng)卡或者路由器配置出錯。所以在你懷疑“網(wǎng)絡”性能出現(xiàn)問題的時候***檢查一下其它地方。網(wǎng)絡上感知到的運行緩慢問題通常應該指向本列表中的其它九項。
推薦閱讀:Cacti網(wǎng)絡監(jiān)控工具完全指南
5.應用程序
雖然沒有應用程序開發(fā)人員愿意承認,但是劣質(zhì)編碼的應用程序成為了硬件問題的導火線。處于靜止狀態(tài)的系統(tǒng)將嚴重受到應用程序啟動并且沒有任何跡象表明的關閉的影響。這是一場在系統(tǒng)管理員和開發(fā)人員之間一直在持續(xù)的斗爭。他們都聲稱是對方的責任。不過,在進行了無數(shù)小時的硬件性能測試之后,人們發(fā)現(xiàn),問題出在應用程序。
推薦閱讀:運維監(jiān)控連載:開源監(jiān)控利器nagios實戰(zhàn)全解
6.惡意軟件
病毒、木馬和間諜軟件在由于惡意軟件導致的性能問題中占很大一部分。在出現(xiàn)問題的時候,用戶大多會抱怨網(wǎng)絡、應用程序或者他們的計算機。這些性能殺手可能隱匿在一個或者多個服務器系統(tǒng)中、用戶工作站中或者兩者的結合體中。惡意軟件的感染十分普遍,因此,你必須采取全方位的防御措施來阻止他們。殺毒軟件、反間諜軟件、本地防火墻和定期補丁能夠幫助你保護系統(tǒng)并防止由此產(chǎn)生的性能問題。
推薦閱讀:五種惡意軟件監(jiān)測方法
7.工作負載
智能工作負載管理可以幫助你防止由于欠缺平衡的工作負載或者負載平衡計劃設計不周而引起的性能問題。把另外一個系統(tǒng)添加到有問題的集群中去可以緩解它的工作壓力。但是在虛擬環(huán)境下的物理機上似乎更容易完成這一操作。***的建議是衡量所有系統(tǒng)的工作能力和性能并對報告給你的數(shù)據(jù)進行分析。轉移工作負載,加強系統(tǒng)并小心留意它的表現(xiàn)。
推薦專題:Linux 集群技術專題
8.故障或者過期的硬件
舊的硬件很容易出故障。硬件問題可能會導致系統(tǒng)重啟、數(shù)據(jù)丟失,它的不可預測性讓系統(tǒng)管理員們叫苦不迭。阻止這類悲劇***的辦法是保持硬件更新頻率,使用冗余硬件,并對你的系統(tǒng)進行仔細的監(jiān)控。
編輯推薦:十大x86服務器常見故障——系統(tǒng)篇 | 明明白白你的Linux服務器——故障篇
9.文件系統(tǒng)
你是否知道你對文件系統(tǒng)的選擇可能會對性能產(chǎn)生深遠的影響?答案是肯定的。有些文件系統(tǒng),比如JFS,可能只占用很少的CPU。XFS擁有很高的可擴展性和性能。NTFS是一個可恢復的高性能文件系統(tǒng)。新的EXT4文件系統(tǒng)能夠有效地支持龐大的文檔。每種文件系統(tǒng)都有它自己的針對性,如果不能為一個應用程序選擇正確的文件系統(tǒng)就可能導致災難性的后果。慎重考慮你的文件系并做出適合你工作的正確選擇。
推薦閱讀:Linux文件系統(tǒng)保護***實踐:Tripwire
10.技術
你為自己的基礎架構所選擇的技術在性能方面扮演著非常重要的角色。比如,如果你的服務致力于一個虛擬架構技術,你可能會遇到在物理系統(tǒng)中不曾見過的性能問題。另外,有些工作負載可以在虛擬技術中生機勃勃。例如,LAMP(Linux、Apache、MySQL、PHP)工作負載比在KVW上的速度更快。不過,集裝箱式的虛擬化(OpenVZ、Parallels、Solaris Zones)擁有適合任何工作負載的性能。
原文:Uncover Your 10 Most Painful Performance Bottlenecks
作者:Kenneth Hess
【編輯推薦】