MongoDB CPU 利用率高,分析慢請求


Jemeter 壓測過程,發現mongodb的CPU均達到100%,需要查看mongodb的執行情況,使用mongo自帶的profiling功能。

profiling將請求的執行情況記錄在DB下的 system.profile 集合里,profiling 有3種模式:

點擊查看官方文檔

在mongodb的客戶端執行:

>db.getProfilingLevel()

根據返回值

0 代表不開啟

1 代表記錄慢指令(默認100ms)

2 代表記錄所有指令

更改此值,使其生效。

db.setProfilingLevel(1)

 

Profile默認是記錄超過100ms的請求,也可以通過添加-slowms啟動參數配置或調用db.setProfilingLevel時加上第二個參數控制。

db.setProfilingLevel(level,slowms);

>db.setProfilingLevel(1,100);

 

接下來就是查看最新的profile記錄:

>db.system.profiling.find().sort({$natural:-1}).limit(30)

 


免責聲明!

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



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