Linux執行速度太慢?教你如何查明具體原因

2021-08-21 01:40:12 字數 3248 閱讀 2909

【51cto.com快譯】有沒有想過為啥你的linux計算機最近執行起來慢騰騰?儘管傳輸速度快、硬體功能強,但執行或處理服務或應用程式還是慢得要命。

可能是下列這些原因導致你的linux計算機很慢:

我們在搞清楚如何加速linux計算機之前,需要知道哪些方法可以幫助我們找到引導時啟動的服務、以更高或更低優先順序執行的程序、cpu執行狀況、記憶體是否塞滿了過多資料,還要檢查交換記憶體區是否已滿。最後,我們還要檢查硬碟是否執行正常。

一、檢查cpu資訊

若想加快一台慢騰騰的linux計算機,採取的第一步是檢查cpu資訊。你的計算機執行libreoffice很耗費時間的主要原因可能是,cpu速度遠不足以執行重量級應用程式。

開啟終端,執行下列命令之一:

上述命令顯示了有關cpu的詳細資訊,比如vendor_id、型號名稱、cpu mhz、快取大小、微**和bogomips。

不妨詳細介紹關於cpu資訊的幾個重要細節。

你可能沒意識到,英特爾賽揚1.73ghz cpu是一款處理能力很低的舊處理器。就這種情況而言,與採用多核2.8ghz cpu的計算機相比,這台計算機的cpu傳輸速度顯然很低。這可能是我們的linux計算機執行重量級應用程式時速度緩慢的原因。

解決辦法

cpu又老又慢的話,唯一的解決辦法是換個新的。這是購買新處理器時要留意的方面。

二、檢查引導時啟動的服務

有不同的方法來檢查引導時啟動的服務。你可以使用下列命令中的任何乙個。

該命令列出了引導時啟動的服務:

該命令列出了引導時啟動的服務。它與centos、fedora和redhat相容:

該命令也列出了引導時啟動的服務:

initctl list 

initctl是守護程序控制工具,它讓系統管理員得以與upstart守護程序進行通訊和互動。

如果你的系統使用systemd,可以使用下列命令來找到引導時執行的服務:

sudo systemctl list-unit-files --state = enabled

解決辦法

對於使用systemd的linux發行版而言,可以使用systemctl命令來管理服務,以便服務不會在引導時執行。

三、檢查cpu負載

除了檢查引導時啟動的服務外,還可以檢查處理器/cpu是否因程序而過載。你可以使用命令top來檢查cpu負載。

top命令將資源使用最高的程序排在上面。正如從下面的螢幕截圖所見,你可以看清楚哪個程序/應用程式在濫用cpu,必要時使用kill命令終止它。

解決辦法

如果你執行過多的應用程式(無論前台還是後台),cpu又達不到標準,最好關閉未使用的應用程式。另外,禁止你未使用的任何應用程式在後台執行。

此外,可以使用preload來載入常用的應用程式。preload是在後台執行的守護程序,它分析經常執行的應用程式。

開啟終端,執行下列命令:

sudo apt-get install preload 

對於fedora和centos使用者而言,可以使用下列命令:

sudo yum install preload 

preload在後台執行。因此,沒必要調整它。preload將常用應用程式的一部分載入到記憶體中,確保更快地載入這些應用程式。

四、檢查閒置記憶體空間

記憶體通常是用來儲存常用應用程式的地方。你可以使用free命令來檢查記憶體資訊,比如記憶體可用的閒置空間。記憶體空間較少也會影響計算機的效能。

解決辦法

要麼公升級記憶體,要麼把耗費大量記憶體的應用程式換成輕量級應用程式。libreoffice等應用程式相當耗費記憶體。你可以使用abiword,代替使用libreoffice。

五、檢查硬碟是否使用過度

硬碟指示燈一直在不停地閃爍,但你不知道它在幹什麼?神秘的輸入/輸出很可能是個問題,所以有乙個類似top的工具:iotop,它專門用來幫助診斷這類問題。

開啟終端,輸入命令:

sudo apt install iotop 

對於fedora和centos使用者而言,可以使用下列命令:

sudo yum install iotop 

正常的閒置系統其值基本上是零,只是在資料寫入時有幾個小的尖峰,如下面螢幕截圖所示:

然而,如果你執行find之類的磁碟密集型實用程式,可以看到iotop清楚列出的名稱和吞吐量。

現在你可以輕鬆了解哪個程式在使用i/o、誰執行它、資料讀取速度等更多資訊。

結論

雖然有很多因素可能導致系統緩慢,但cpu、記憶體和磁碟i/o是導致絕大多數效能問題的原因。使用本文介紹的方法將幫助你查明效能問題的原因以及如何解決這些問題。

執行速度對比

2018 04 12 pyspark master spark node1 7077 num executors 100 executor memory 6g executor cores 5 driver memory 1g conf spark.default.parallelism 1000 ...

如何提高selenum的執行速度

selenum的執行速度會受到多方面的影響,如網速,操作步驟的繁瑣性,頁面的載入速度以及指令碼中設定的等待時間,執行的執行緒數等,所以不能從單方面去追求速度。要確保穩定性,能穩定的實現回歸測試超市關鍵。我們可以從以下幾個方面提高執行效率 化繁為簡,減少操作步驟 如經過三四步才開啟的網頁,可以直接通過...

如何提高FPGA的執行速度

對於設計者來說,當然希望我們設計的電路的工作頻率 在這裡如無特別說明,工作頻率指fpg 內的工作頻率 盡量高。我們也經常聽說用資源換速度,用流水的方式可以提高工作頻率,這確實是乙個很重要的方法,今天我想進一步去分析該如何提高電路的工作頻率。我們先來分析下是什麼影響了電路的工作頻率。我們電路的工作頻率...