linux服務器執行cd和ls等等命令都有卡頓現象問題記錄


一 執行命令free -gh

1. free 命令顯示系統內存的使用情況,包括物理內存、交換內存(swap)和內核緩沖區內存。

2. -g 表示以G單位顯示, -m以兆單位顯示,    h會在數字后面加單位(G,M)

 

3.下面先解釋一下輸出的內容:
  Mem 行(第二行)是內存的使用情況。
  Swap 行(第三行)是交換空間的使用情況。 (假如用到了交換內存,那你的內存不足了,有錢直接+內存,沒錢就減少占用內存的進程)
  total 列顯示系統總的可用物理內存和交換空間大小。
  used 列顯示已經被使用的物理內存和交換空間。
  free 列顯示還有多少物理內存和交換空間可用使用。
  shared 列顯示被共享使用的物理內存大小。
  buff/cache 列顯示被 buffer 和 cache 使用的物理內存大小。
  available 列顯示還可以被應用程序使用的物理內存大小。

  總物理內存 total=used+free+buff/cache
  還可以申請的物理內存 = available
  應用程序已使用的物理內存 = used
  已占用的物理內存 = total - available
  available <= free + buff/cache 因為有一部分page或cache是不能回收的

看上圖紅框標注的free,我的現在是1.6G,如果顯示0那么服務器偶爾會卡頓了

找找看是不是啟動了很多進程占用內存;相應殺一些進程;順便記錄一個批量殺進程命令

ps aux | grep python3 | grep -v grep | awk '{print $2}'  | xargs kill -15

xargs命令可以通過管道接受字符串,並將接收到的字符串通過空格分割成許多參數(默認情況下是通過空格分割) 然后將參數傳遞給其后面的命令,作為后面命令的命令行參數。

二 執行命令top

 

 看%Cpu(s) 這列的 26.7id, 它表示剩余(100~0),如果很低,則表示cpu被吃完了,現在我的是26.7也是低了點;

看哪些進程占用cpu較多,能優化就優化吧;

三 執行命令iostat -x 1(查看磁盤IO使用情況

后面那個1表示一秒刷新一次

 

 我的兩個磁盤vda和vdb;

當發現最右側%util很高時,表示IO就很高了;

四 執行命令df -h(查看磁盤使用情況)

這里就不在記錄了,已經記錄過另一篇了,直達鏈接

https://www.cnblogs.com/JahanGu/p/10438867.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM