mongoDB優化(一) --- 連接池


本章主要講mongoDB文件最大打開數既連接池最大數修改

前言:

mongoDB屬於內存型非關系型數據庫,既所有操作都在內存中執行,當內存無法存放時才會放到磁盤中去操作,所以mongoDB的服務器一般是大內存+SSD的配置。但就性能方面而言,當超過內存值去使用磁盤來做操作時,性能至少會降低為原來性能的1/3。所以在實際的使用和測試過程中需要盡量避免讓mongo使用到磁盤。
 

調優:

  mongoDB是使用文檔方式存儲的,而取決於mongoDB的連接池數量也是這個open files的值,mongoDB的機制是 open files*80% + 16 = 允許最大連接數。

  open files默認值是1024,既默認的最大連接數是800多,這在性能測試中非常影響測試,所以需要進行修改。

  使用ulimit可以概覽當前的一些默認配置,
ulimit -a

  使用

ulimit -n

  則可以直接查看open files的值,如下圖

      

  修改該值的方法有兩種,第一種直接使用

ulimit -n 65535

  該方法修改的最大文件打開數僅針對當前的session有效,當前用戶退出后重新登錄則會失效。如果當前用戶設置后重啟mongoDB服務器則會永久生效。

  第二種修改方式
vim /etc/security/limits.conf

* soft nofile 65535
* hard nofile 65535

  修改配置文件后並不會立即生效,需要在新生成的session中才會生效,當前session並不會生效。可以先退出再登陸mongo服務器即可生效。

 以上修改后完成以后需要在mongoDB中驗證
./mongo  --username xxx  --password xxx --port xxx --authenticationDatabase xxx
db.serverStatus().connections
 

可以看到可用時5.2W+ 說明已經生效

 

以上就是mongoDB連接池和最大打開文件數的修改

 


免責聲明!

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



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