0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Linux性能調(diào)優(yōu)的思路

馬哥Linux運(yùn)維 ? 來(lái)源:馬哥Linux運(yùn)維 ? 2023-07-11 09:13 ? 次閱讀

Linux操作系統(tǒng)是一個(gè)開(kāi)源產(chǎn)品,也是一個(gè)開(kāi)源軟件的實(shí)踐和應(yīng)用平臺(tái),在這個(gè)平臺(tái)下有無(wú)數(shù)的開(kāi)源軟件支撐,我們常見(jiàn)的apache、tomcat、mysql等。 開(kāi)源軟件的最大理念是自由、開(kāi)放,那么Linux作為一個(gè)開(kāi)源平臺(tái),最終要實(shí)現(xiàn)的是通過(guò)這些開(kāi)源軟件的支持,以最低廉的成本,達(dá)到應(yīng)用最優(yōu)的性能。因此,談到性能問(wèn)題,主要實(shí)現(xiàn)的是Linux操作系統(tǒng)和應(yīng)用程序的最佳結(jié)合。

01性能問(wèn)題綜述

系統(tǒng)的性能是指操作系統(tǒng)完成任務(wù)的有效性、穩(wěn)定性和響應(yīng)速度。

Linux系統(tǒng)管理員可能經(jīng)常會(huì)遇到系統(tǒng)不穩(wěn)定、響應(yīng)速度慢等問(wèn)題,例如在Linux上搭建了一個(gè)web服務(wù),經(jīng)常出現(xiàn)網(wǎng)頁(yè)無(wú)法打開(kāi)、打開(kāi)速度慢等現(xiàn)象,而遇到這些問(wèn)題,就有人會(huì)抱怨Linux系統(tǒng)不好,其實(shí)這些都是表面現(xiàn)象。

操作系統(tǒng)完成一個(gè)任務(wù)時(shí),與系統(tǒng)自身設(shè)置、網(wǎng)絡(luò)拓樸結(jié)構(gòu)、路由設(shè)備、路由策略、接入設(shè)備、物理線(xiàn)路等多個(gè)方面都密切相關(guān),任何一個(gè)環(huán)節(jié)出現(xiàn)問(wèn)題,都會(huì)影響整個(gè)系統(tǒng)的性能。

因此當(dāng)Linux應(yīng)用出現(xiàn)問(wèn)題時(shí),應(yīng)當(dāng)從應(yīng)用程序、操作系統(tǒng)、服務(wù)器硬件、網(wǎng)絡(luò)環(huán)境等方面綜合排查,定位問(wèn)題出現(xiàn)在哪個(gè)部分,然后集中解決。

在應(yīng)用程序、操作系統(tǒng)、服務(wù)器硬件、網(wǎng)絡(luò)環(huán)境等方面,影響性能最大的是應(yīng)用程序和操作系統(tǒng)兩個(gè)方面,因?yàn)檫@兩個(gè)方面出現(xiàn)的問(wèn)題不易察覺(jué),隱蔽性很強(qiáng)。而硬件、網(wǎng)絡(luò)方面只要出現(xiàn)問(wèn)題,一般都能馬上定位。

下面主要講解操作系統(tǒng)方面的性能調(diào)優(yōu)思路,應(yīng)用程序方面需要具體問(wèn)題具體對(duì)待。

以下從影響Linux性能的因素、分析性能涉及的人員、系統(tǒng)性能優(yōu)化工具、系統(tǒng)性能評(píng)價(jià)標(biāo)準(zhǔn)四個(gè)方面介紹優(yōu)化Linux的一般思路和方法。

02影響 Linux 性能的因素

2.1 系統(tǒng)硬件資源

(1)CPU

CPU是操作系統(tǒng)穩(wěn)定運(yùn)行的根本,CPU的速度與性能在很大程度上決定了系統(tǒng)整體的性能,因此,CPU數(shù)量越多、主頻越高,服務(wù)器性能也就相對(duì)越好。但事實(shí)并非完全如此。

目前大部分CPU在同一時(shí)間內(nèi)只能運(yùn)行一個(gè)線(xiàn)程,超線(xiàn)程的處理器可以在同一時(shí)間運(yùn)行多個(gè)線(xiàn)程,因此,可以利用處理器的超線(xiàn)程特性提高系統(tǒng)性能。在Linux系統(tǒng)下,只有運(yùn)行SMP內(nèi)核才能支持超線(xiàn)程,但是,安裝的CPU數(shù)量越多,從超線(xiàn)程獲得的性能方面的提高就越少。

另外,Linux內(nèi)核會(huì)把多核的處理器當(dāng)作多個(gè)單獨(dú)的CPU來(lái)識(shí)別,例如兩個(gè)4核的CPU,在Lnux系統(tǒng)下會(huì)被當(dāng)作8個(gè)單核CPU。但是從性能角度來(lái)講,兩個(gè)4核的CPU和8個(gè)單核的CPU并不完全等價(jià),根據(jù)權(quán)威部門(mén)得出的測(cè)試結(jié)論,前者的整體性能要比后者低25%~30%。

可能出現(xiàn)CPU瓶頸的應(yīng)用有db服務(wù)器、動(dòng)態(tài)Web服務(wù)器等,對(duì)于這類(lèi)應(yīng)用,要把CPU的配置和性能放在主要位置。

(2)內(nèi)存

內(nèi)存的大小也是影響Linux性能的一個(gè)重要的因素,內(nèi)存太小,系統(tǒng)進(jìn)程將被阻塞,應(yīng)用也將變得緩慢,甚至失去響應(yīng);內(nèi)存太大,導(dǎo)致資源浪費(fèi)。

Linux系統(tǒng)采用了物理內(nèi)存和虛擬內(nèi)存兩種方式,虛擬內(nèi)存雖然可以緩解物理內(nèi)存的不足,但是占用過(guò)多的虛擬內(nèi)存,應(yīng)用程序的性能將明顯下降,要保證應(yīng)用程序的高性能運(yùn)行,物理內(nèi)存一定要足夠大;但是過(guò)大的物理內(nèi)存,會(huì)造成內(nèi)存資源浪費(fèi),例如,在一個(gè)32位處理器的Linux操作系統(tǒng)上,超過(guò)8GB的物理內(nèi)存都將被浪費(fèi)。

因此,要使用更大的內(nèi)存,建議安裝64位的操作系統(tǒng),同時(shí)開(kāi)啟Linux的大內(nèi)存內(nèi)核支持。

由于處理器尋址范圍的限制,在32位Linux操作系統(tǒng)上,應(yīng)用程序單個(gè)進(jìn)程最大只能使用4GB的內(nèi)存,這樣以來(lái),即使系統(tǒng)有更大的內(nèi)存,應(yīng)用程序也無(wú)法“享”用,解決的辦法就是使用64位處理器,安裝64位操作系統(tǒng)。在64位操作系統(tǒng)下,可以滿(mǎn)足所有應(yīng)用程序?qū)?nèi)存的使用需求 ,幾乎沒(méi)有限制。

可能出現(xiàn)內(nèi)存性能瓶頸的應(yīng)用有NOSQL服務(wù)器、數(shù)據(jù)庫(kù)服務(wù)器、緩存服務(wù)器等,對(duì)于這類(lèi)應(yīng)用要把內(nèi)存大小放在主要位置。

(3)磁盤(pán)I/O性能

磁盤(pán)的I/O性能直接影響應(yīng)用程序的性能,在一個(gè)有頻繁讀寫(xiě)的應(yīng)用中,如果磁盤(pán)I/O性能得不到滿(mǎn)足,就會(huì)導(dǎo)致應(yīng)用停滯。好在現(xiàn)今的磁盤(pán)都采用了很多方法來(lái)提高I/O性能,比如常見(jiàn)的磁盤(pán)RAID技術(shù)。

通過(guò)RAID技術(shù)組成的磁盤(pán)組,就相當(dāng)于一個(gè)大硬盤(pán),用戶(hù)可以對(duì)它進(jìn)行分區(qū)格式化、建立文件系統(tǒng)等操作,跟單個(gè)物理硬盤(pán)一模一樣,唯一不同的是RAID磁盤(pán)組的I/O性能比單個(gè)硬盤(pán)要高很多,同時(shí)在數(shù)據(jù)的安全性也有很大提升。

根據(jù)磁盤(pán)組合方式的不同,RAID可以分為RAID0,RAID1、RAID2、RAID3、RAID4、RAID5、RAID6、RAID7、RAID0+1、RAID10等級(jí)別,常用的RAID級(jí)別有RAID0、RAID1、RAID5、RAID0+1,這里進(jìn)行簡(jiǎn)單介紹。

RAID 0:通過(guò)把多塊硬盤(pán)粘合成一個(gè)容量更大的硬盤(pán)組,提高了磁盤(pán)的性能和吞吐量。這種方式成本低,要求至少兩個(gè)磁盤(pán),但是沒(méi)有容錯(cuò)和數(shù)據(jù)修復(fù)功能,因而只能用在對(duì)數(shù)據(jù)安全性要求不高的環(huán)境中。

RAID 1:也就是磁盤(pán)鏡像,通過(guò)把一個(gè)磁盤(pán)的數(shù)據(jù)鏡像到另一個(gè)磁盤(pán)上,最大限度地保證磁盤(pán)數(shù)據(jù)的可靠性和可修復(fù)性,具有很高的數(shù)據(jù)冗余能力,但磁盤(pán)利用率只有50%,因而,成本最高,多用在保存重要數(shù)據(jù)的場(chǎng)合。

RAID5:采用了磁盤(pán)分段加奇偶校驗(yàn)技術(shù),從而提高了系統(tǒng)可靠性,RAID5讀出效率很高,寫(xiě)入效率一般,至少需要3塊盤(pán)。允許一塊磁盤(pán)故障,而不影響數(shù)據(jù)的可用性。

RAID0+1:把RAID0和RAID1技術(shù)結(jié)合起來(lái)就成了RAID0+1,至少需要4個(gè)硬盤(pán)。此種方式的數(shù)據(jù)除分布在多個(gè)盤(pán)上外,每個(gè)盤(pán)都有其鏡像盤(pán),提供全冗余能力,同時(shí)允許一個(gè)磁盤(pán)故障,而不影響數(shù)據(jù)可用性,并具有快速讀/寫(xiě)能力。

通過(guò)了解各個(gè)RAID級(jí)別的性能,可以根據(jù)應(yīng)用的不同特性,選擇適合自身的RAID級(jí)別,從而保證應(yīng)用程序在磁盤(pán)方面達(dá)到最優(yōu)性能。

(4)網(wǎng)絡(luò)寬帶

Linux下的各種應(yīng)用,一般都是基于網(wǎng)絡(luò)的,因此網(wǎng)絡(luò)帶寬也是影響性能的一個(gè)重要因素,低速的、不穩(wěn)定的網(wǎng)絡(luò)將導(dǎo)致網(wǎng)絡(luò)應(yīng)用程序的訪問(wèn)阻塞,而穩(wěn)定、高速的網(wǎng)絡(luò)帶寬,可以保證應(yīng)用程序在網(wǎng)絡(luò)上暢通無(wú)阻地運(yùn)行。幸運(yùn)的是,現(xiàn)在的網(wǎng)絡(luò)一般都是千兆帶寬或光纖網(wǎng)絡(luò),帶寬問(wèn)題對(duì)應(yīng)用程序性能造成的影響也在逐步降低。

2.2 操作系統(tǒng)相關(guān)資源

基于操作系統(tǒng)的性能優(yōu)化也是多方面的,可以從系統(tǒng)安裝、系統(tǒng)內(nèi)核參數(shù)、網(wǎng)絡(luò)參數(shù)、文件系統(tǒng)等幾個(gè)方面進(jìn)行衡量,下面依次進(jìn)行簡(jiǎn)單介紹。

(1)系統(tǒng)安裝優(yōu)化

系統(tǒng)優(yōu)化可以從安裝操作系統(tǒng)開(kāi)始,當(dāng)安裝Linux系統(tǒng)時(shí),磁盤(pán)的劃分,SWAP內(nèi)存的分配都直接影響以后系統(tǒng)的運(yùn)行性能。

例如,磁盤(pán)分配可以遵循應(yīng)用的需求:

對(duì)于對(duì)寫(xiě)操作頻繁而對(duì)數(shù)據(jù)安全性要求不高的應(yīng)用,可以把磁盤(pán)做成RAID 0;而對(duì)于對(duì)數(shù)據(jù)安全性較高,對(duì)讀寫(xiě)沒(méi)有特別要求的應(yīng)用,可以把磁盤(pán)做成RAID 1;對(duì)于對(duì)讀操作要求較高,而對(duì)寫(xiě)操作無(wú)特殊要求,并要保證數(shù)據(jù)安全性的應(yīng)用,可以選擇RAID 5;對(duì)于對(duì)讀寫(xiě)要求都很高,并且對(duì)數(shù)據(jù)安全性要求也很高的應(yīng)用,可以選擇RAID10/01。

這樣通過(guò)不同的應(yīng)用需求設(shè)置不同的RAID級(jí)別,在磁盤(pán)底層對(duì)系統(tǒng)進(jìn)行優(yōu)化操作。

隨著內(nèi)存價(jià)格的降低和內(nèi)存容量的日益增大,對(duì)虛擬內(nèi)存SWAP的設(shè)定,現(xiàn)在已經(jīng)沒(méi)有了所謂虛擬內(nèi)存是物理內(nèi)存兩倍的要求,但是SWAP的設(shè)定還是不能忽略,根據(jù)經(jīng)驗(yàn),如果內(nèi)存較?。ㄎ锢韮?nèi)存小于4GB),一般設(shè)置SWAP交換分區(qū)大小為內(nèi)存的2倍;

如果物理內(nèi)存大于8GB小于16GB,可以設(shè)置SWAP大小等于或略小于物理內(nèi)存即可;如果內(nèi)存大小在16GB以上,原則上可以設(shè)置SWAP為0,但并不建議這么做,因?yàn)樵O(shè)置一定大小的SWAP還是有一定作用的。

(2)內(nèi)核參數(shù)優(yōu)化

系統(tǒng)安裝完成后,優(yōu)化工作并沒(méi)有結(jié)束,接下來(lái)還可以對(duì)系統(tǒng)內(nèi)核參數(shù)進(jìn)行優(yōu)化,不過(guò)內(nèi)核參數(shù)的優(yōu)化要和系統(tǒng)中部署的應(yīng)用結(jié)合起來(lái)整體考慮。

例如,如果系統(tǒng)部署的是Oracle數(shù)據(jù)庫(kù)應(yīng)用,那么就需要對(duì)系統(tǒng)共享內(nèi)存段、系統(tǒng)信號(hào)量、文件句柄等參數(shù)進(jìn)行優(yōu)化設(shè)置;如果部署的是Web應(yīng)用,那么就需要根據(jù)Web應(yīng)用特性進(jìn)行網(wǎng)絡(luò)參數(shù)的優(yōu)化,例如修改net.ipv4.ip_local_port_range、net.ipv4.tcp_tw_reuse、net.core.somaxconn等網(wǎng)絡(luò)內(nèi)核參數(shù)。

(3)文件系統(tǒng)優(yōu)化

文件系統(tǒng)的優(yōu)化也是系統(tǒng)資源優(yōu)化的一個(gè)重點(diǎn),在Linux下可選的文件系統(tǒng)有ext2、ext3、ReiserFS、ext4、xfs,根據(jù)不同的應(yīng)用,選擇不同的文件系統(tǒng)。

Linux標(biāo)準(zhǔn)文件系統(tǒng)是從VFS開(kāi)始的,然后是ext,接著就是ext2,應(yīng)該說(shuō),ext2是Linux上標(biāo)準(zhǔn)的文件系統(tǒng),ext3是在ext2基礎(chǔ)上增加日志形成的,從VFS到ext4,其設(shè)計(jì)思想沒(méi)有太大變化,都是早期UNIX家族基于超級(jí)塊和inode的設(shè)計(jì)理念。

XFS文件系統(tǒng)是一個(gè)高級(jí)日志文件系統(tǒng),XFS通過(guò)分布處理磁盤(pán)請(qǐng)求、定位數(shù)據(jù)、保持Cache 的一致性來(lái)提供對(duì)文件系統(tǒng)數(shù)據(jù)的低延遲、高帶寬的訪問(wèn),因此,XFS極具伸縮性,非常健壯,具有優(yōu)秀的日志記錄功能、可擴(kuò)展性強(qiáng)、快速寫(xiě)入性能等優(yōu)點(diǎn)。

目前服務(wù)器端ext4和xfs是主流文件系統(tǒng),如何選擇合適的文件系統(tǒng),需要根據(jù)文件系統(tǒng)的特點(diǎn)加上業(yè)務(wù)的需求綜合來(lái)定。

2.3 應(yīng)用程序軟件資源

應(yīng)用程序的優(yōu)化其實(shí)是整個(gè)優(yōu)化工程的核心,如果一個(gè)應(yīng)用程序存在BUG,那么即使所有其他方面都達(dá)到了最優(yōu)狀態(tài),整個(gè)應(yīng)用系統(tǒng)還是性能低下,所以,對(duì)應(yīng)用程序的優(yōu)化是性能優(yōu)化過(guò)程的重中之重,這就對(duì)程序架構(gòu)設(shè)計(jì)人員和程序開(kāi)發(fā)人員提出了更高的要求。

03分析系統(tǒng)性能涉及的人員

3.1 Linux運(yùn)維人員

在做性能優(yōu)化過(guò)程中,Linux運(yùn)維人員承擔(dān)著很重要的任務(wù)。

首先,Linux運(yùn)維人員要了解和掌握操作系統(tǒng)的當(dāng)前運(yùn)行狀態(tài),例如系統(tǒng)負(fù)載、內(nèi)存狀態(tài)、進(jìn)程狀態(tài)、CPU負(fù)荷等信息,這些信息是檢測(cè)和判斷系統(tǒng)性能的基礎(chǔ)和依據(jù);

其次,Linux運(yùn)維人員還有掌握系統(tǒng)的硬件信息,例如磁盤(pán)I/O、CPU型號(hào)、內(nèi)存大小、網(wǎng)卡帶寬等參數(shù)信息,然后根據(jù)這些信息綜合評(píng)估系統(tǒng)資源的使用情況。

第三,作為一名Linux運(yùn)維人員,還要掌握應(yīng)用程序?qū)ο到y(tǒng)資源的使用情況,更深入的一點(diǎn)就是要了解應(yīng)用程序的運(yùn)行效率,例如是否有程序BUG、內(nèi)存溢出等問(wèn)題,通過(guò)對(duì)系統(tǒng)資源的監(jiān)控,就能發(fā)現(xiàn)應(yīng)用程序是否存在異常,如果確實(shí)是應(yīng)用程序存在問(wèn)題,需要把問(wèn)題立刻反映給程序開(kāi)發(fā)人員,進(jìn)而改進(jìn)或升級(jí)程序。

性能優(yōu)化本身就是一個(gè)復(fù)雜和繁瑣的過(guò)程,Linux運(yùn)維人員只有了解了系統(tǒng)硬件信息、網(wǎng)絡(luò)信息、操作系統(tǒng)配置信息和應(yīng)用程序信息才能有針對(duì)性地的展開(kāi)對(duì)服務(wù)器性能優(yōu)化,這就要求Linux運(yùn)維人員有充足的理論知識(shí)、豐富的實(shí)戰(zhàn)經(jīng)驗(yàn)以及縝密分析問(wèn)題的頭腦。

3.2 系統(tǒng)架構(gòu)設(shè)計(jì)人員

系統(tǒng)性能優(yōu)化涉及的第二類(lèi)人員就是應(yīng)用程序的架構(gòu)設(shè)計(jì)人員。如果Linux運(yùn)維人員在經(jīng)過(guò)綜合判斷后,發(fā)現(xiàn)影響性能的是應(yīng)用程序的執(zhí)行效率,那么程序架構(gòu)設(shè)計(jì)人員就要及時(shí)介入,深入了解程序運(yùn)行狀態(tài)。

首先,系統(tǒng)架構(gòu)設(shè)計(jì)人員要跟蹤了解程序的執(zhí)行效率,如果執(zhí)行效率存在問(wèn)題,要找出哪里出現(xiàn)了問(wèn)題;其次,如果真的是架構(gòu)設(shè)計(jì)出現(xiàn)了問(wèn)題,那么就要馬上優(yōu)化或改進(jìn)系統(tǒng)架構(gòu),設(shè)計(jì)更好的應(yīng)用系統(tǒng)架構(gòu)。

3.3 軟件開(kāi)發(fā)人員

系統(tǒng)性能優(yōu)化最后一個(gè)環(huán)節(jié)涉及的是程序開(kāi)發(fā)人員,在Linux運(yùn)維人員或架構(gòu)設(shè)計(jì)人員找到程序或結(jié)構(gòu)瓶頸后,程序開(kāi)發(fā)人員要馬上介入進(jìn)行相應(yīng)的程序修改。修改程序要以程序的執(zhí)行效率為基準(zhǔn),改進(jìn)程序的邏輯,有針對(duì)性地進(jìn)行代碼優(yōu)化。

例如,Linux運(yùn)維人員在系統(tǒng)中發(fā)現(xiàn)有條SQL語(yǔ)句耗費(fèi)大量的系統(tǒng)資源,抓取這條執(zhí)行的SQL語(yǔ)句,發(fā)現(xiàn)此SQL語(yǔ)句的執(zhí)行效率太差,是開(kāi)發(fā)人員編寫(xiě)的代碼執(zhí)行效率低造成的,這就需要把這個(gè)信息反饋給開(kāi)發(fā)人員,開(kāi)發(fā)人員在收到這個(gè)問(wèn)題后,可以有針對(duì)性的進(jìn)行SQL優(yōu)化,進(jìn)而實(shí)現(xiàn)程序代碼的優(yōu)化。

從上面這個(gè)過(guò)程可以看出,系統(tǒng)性能優(yōu)化一般遵循的流程是:

首先Linux運(yùn)維人員查看系統(tǒng)的整體狀況,主要從系統(tǒng)硬件、網(wǎng)絡(luò)設(shè)備、操作系統(tǒng)配置、應(yīng)用程序架構(gòu)和程序代碼五個(gè)方面進(jìn)行綜合判斷;

如果發(fā)現(xiàn)是系統(tǒng)硬件、網(wǎng)絡(luò)設(shè)備或者操作系統(tǒng)配置問(wèn)題,Linux運(yùn)維人員可以根據(jù)情況自主解決;

如果發(fā)現(xiàn)是程序結(jié)構(gòu)問(wèn)題,就需要提交給程序架構(gòu)設(shè)計(jì)人員;

如果發(fā)現(xiàn)是程序代碼執(zhí)行問(wèn)題,就交給開(kāi)發(fā)人員進(jìn)行代碼優(yōu)化。這樣就完成了一個(gè)系統(tǒng)性能優(yōu)化的過(guò)程。

04調(diào)優(yōu)總結(jié)

系統(tǒng)性能優(yōu)化是個(gè)涉及面廣、繁瑣、長(zhǎng)久的工作,尋找出現(xiàn)性能問(wèn)題的根源往往是最難的部分,一旦找到出現(xiàn)問(wèn)題的原因,性能問(wèn)題也就迎刃而解。因此,解決問(wèn)題的思路變得非常重要。

例如,Linux系統(tǒng)下的一個(gè)網(wǎng)站系統(tǒng),用戶(hù)反映,網(wǎng)站訪問(wèn)速度很慢,有時(shí)無(wú)法訪問(wèn)。

第一步要做的是檢測(cè)網(wǎng)絡(luò),可以通過(guò)ping命令檢查網(wǎng)站的域名解析是否正常,同時(shí),ping服務(wù)器地址的延時(shí)是否過(guò)大等等,通過(guò)這種方式,首先排除網(wǎng)絡(luò)可能出現(xiàn)的問(wèn)題;

如果網(wǎng)絡(luò)沒(méi)有問(wèn)題,接著進(jìn)入第二步,對(duì)Linux系統(tǒng)的內(nèi)存使用狀況進(jìn)行檢查,因?yàn)榫W(wǎng)站響應(yīng)速度慢,一般跟內(nèi)存關(guān)聯(lián)比較大,通過(guò)free、vmstat等命令判斷內(nèi)存資源是否緊缺;

如果內(nèi)存資源不存在問(wèn)題,進(jìn)入第三步,檢查系統(tǒng)CPU的負(fù)載狀況,可以通過(guò)sar、vmstat、top等命令的輸出綜合判斷CPU是否存在過(guò)載問(wèn)題,如果CPU沒(méi)有問(wèn)題;

繼續(xù)進(jìn)入第四步,檢查系統(tǒng)的磁盤(pán)I/O是否存在瓶頸,可以通過(guò)iostat、vmstat等命令檢查磁盤(pán)的讀寫(xiě)性能,如果磁盤(pán)讀寫(xiě)也沒(méi)有問(wèn)題,Linux系統(tǒng)自身的性能問(wèn)題基本排除,最后要做的是檢查程序本身是否存在問(wèn)題。

通過(guò)這樣的思路,層層檢測(cè),步步排查,性能問(wèn)題就“無(wú)處藏身”,查找出現(xiàn)性能問(wèn)題的環(huán)節(jié)也就變得非常簡(jiǎn)單。

鏈接:https://juejin.cn/post/6867340596848263181






審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • PHP
    PHP
    +關(guān)注

    關(guān)注

    0

    文章

    454

    瀏覽量

    27345
  • Apache
    +關(guān)注

    關(guān)注

    0

    文章

    64

    瀏覽量

    12676
  • MYSQL數(shù)據(jù)庫(kù)

    關(guān)注

    0

    文章

    97

    瀏覽量

    9815
  • Linux操作系統(tǒng)
    +關(guān)注

    關(guān)注

    0

    文章

    54

    瀏覽量

    11382

原文標(biāo)題:Linux 的性能調(diào)優(yōu)的思路

文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    史上最全性能調(diào)優(yōu)總結(jié)

    在說(shuō)什么是性能調(diào)優(yōu)之前,我們先來(lái)說(shuō)一下,計(jì)算機(jī)的體系結(jié)構(gòu)。
    的頭像 發(fā)表于 05-13 08:57 ?6763次閱讀
    史上最全<b class='flag-5'>性能</b><b class='flag-5'>調(diào)</b><b class='flag-5'>優(yōu)</b>總結(jié)

    HBase性能調(diào)優(yōu)概述

    HBase性能調(diào)優(yōu)
    發(fā)表于 07-03 11:35

    基于全HDD aarch64服務(wù)器的Ceph性能調(diào)優(yōu)實(shí)踐總結(jié)

    如ISA-L也都在arm平臺(tái)上進(jìn)行了優(yōu)化。- 對(duì)于SPDK,也是從軟件層面在arm平臺(tái)上進(jìn)行了優(yōu)化。4.3 操作系統(tǒng)調(diào)優(yōu)Linux內(nèi)核來(lái)調(diào)優(yōu)
    發(fā)表于 07-05 14:26

    infosphere CDC 性能調(diào)優(yōu)及MC性能指標(biāo)監(jiān)控

    infosphere CDC 性能調(diào)優(yōu)及MC性能指標(biāo)監(jiān)控
    發(fā)表于 09-07 09:26 ?4次下載
    infosphere CDC <b class='flag-5'>性能</b><b class='flag-5'>調(diào)</b><b class='flag-5'>優(yōu)</b>及MC<b class='flag-5'>性能</b>指標(biāo)監(jiān)控

    infosphere CDC性能調(diào)優(yōu)的文檔

    infosphere CDC性能調(diào)優(yōu)的文檔
    發(fā)表于 09-07 09:30 ?7次下載
    infosphere CDC<b class='flag-5'>性能</b><b class='flag-5'>調(diào)</b><b class='flag-5'>優(yōu)</b>的文檔

    如何對(duì)電機(jī)進(jìn)行調(diào)優(yōu)?調(diào)優(yōu)的好處是什么?

    如何自動(dòng)對(duì)電機(jī)進(jìn)行調(diào)優(yōu)
    的頭像 發(fā)表于 08-22 00:03 ?3400次閱讀

    Linux查看資源使用情況和性能調(diào)優(yōu)常用的命令

    目錄 前言 top命令 htop命令 ps命令 free命令 vmstat命令 iosat命令 netstat命令 df命令 du命令 前言 一般來(lái)說(shuō),Linux性能調(diào)優(yōu)涉及CPU、內(nèi)
    的頭像 發(fā)表于 11-12 17:54 ?4464次閱讀

    Linux用電功耗調(diào)優(yōu)的筆記分享

    整理一些Linux用電功耗調(diào)優(yōu)的筆記,分享給小伙伴,關(guān)于用電調(diào)優(yōu)個(gè)人覺(jué)得
    的頭像 發(fā)表于 06-23 15:19 ?4712次閱讀

    linux網(wǎng)絡(luò)棧監(jiān)控及調(diào)優(yōu):數(shù)據(jù)接收

    linux 網(wǎng)絡(luò)棧的監(jiān)控及調(diào)優(yōu)上沒(méi)有捷徑可言,如果你想做有效的調(diào)優(yōu),就必須搞清楚各個(gè)系統(tǒng)之間是怎么交互的。
    的頭像 發(fā)表于 03-25 16:44 ?1961次閱讀

    Linux性能調(diào)優(yōu)常見(jiàn)工具和堆棧解析

    ? Linux系統(tǒng)性能調(diào)優(yōu)涉及多個(gè)方面,包括內(nèi)核參數(shù)調(diào)整、文件系統(tǒng)優(yōu)化、網(wǎng)絡(luò)設(shè)置等。 ? 1. 內(nèi)核參數(shù)調(diào)整:通過(guò)調(diào)整內(nèi)核參數(shù)來(lái)提高系統(tǒng)性能
    的頭像 發(fā)表于 06-29 09:45 ?1185次閱讀
    <b class='flag-5'>Linux</b><b class='flag-5'>性能</b><b class='flag-5'>調(diào)</b><b class='flag-5'>優(yōu)</b>常見(jiàn)工具和堆棧解析

    javajvm調(diào)優(yōu)有幾種方法

    JVM調(diào)優(yōu)是Java應(yīng)用程序性能優(yōu)化過(guò)程中的重要步驟,它通過(guò)針對(duì)JVM進(jìn)行優(yōu)化來(lái)提高應(yīng)用程序的性能和可靠性。JVM調(diào)
    的頭像 發(fā)表于 12-05 11:11 ?2402次閱讀

    什么場(chǎng)景需要jvm調(diào)優(yōu)

    JVM調(diào)優(yōu)是指對(duì)Java虛擬機(jī)進(jìn)行性能優(yōu)化和資源管理,以提高應(yīng)用程序的運(yùn)行效率和吞吐量。JVM調(diào)優(yōu)的場(chǎng)景有很多,下面將詳細(xì)介紹各種不同的場(chǎng)景
    的頭像 發(fā)表于 12-05 11:14 ?1740次閱讀

    jvm調(diào)優(yōu)工具有哪些

    JVM調(diào)優(yōu)是提高Java應(yīng)用程序性能的重要手段,而JVM調(diào)優(yōu)工具則是輔助開(kāi)發(fā)人員進(jìn)行調(diào)
    的頭像 發(fā)表于 12-05 11:44 ?1419次閱讀

    鴻蒙開(kāi)發(fā)實(shí)戰(zhàn):【性能調(diào)優(yōu)組件】

    性能調(diào)優(yōu)組件包含系統(tǒng)和應(yīng)用調(diào)優(yōu)框架,旨在為開(kāi)發(fā)者提供一套性能
    的頭像 發(fā)表于 03-13 15:12 ?758次閱讀
    鴻蒙開(kāi)發(fā)實(shí)戰(zhàn):【<b class='flag-5'>性能</b><b class='flag-5'>調(diào)</b><b class='flag-5'>優(yōu)</b>組件】

    手把手教你如何調(diào)優(yōu)Linux網(wǎng)絡(luò)參數(shù)

    在高并發(fā)網(wǎng)絡(luò)服務(wù)場(chǎng)景中,Linux內(nèi)核的默認(rèn)網(wǎng)絡(luò)參數(shù)往往無(wú)法滿(mǎn)足需求,導(dǎo)致性能瓶頸、連接超時(shí)甚至服務(wù)崩潰。本文基于真實(shí)案例分析,從參數(shù)解讀、問(wèn)題診斷到優(yōu)化實(shí)踐,手把手教你如何調(diào)優(yōu)
    的頭像 發(fā)表于 05-29 09:21 ?151次閱讀

    電子發(fā)燒友

    中國(guó)電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會(huì)員交流學(xué)習(xí)
    • 獲取您個(gè)性化的科技前沿技術(shù)信息
    • 參加活動(dòng)獲取豐厚的禮品