1.在生產環境中,若不限制moongo對記憶體的使用,會導致mongo集群記憶體使用率飆公升。
2.物理記憶體和虛擬記憶體區別
物理記憶體和虛擬記憶體:
物理記憶體:真正的記憶體
虛擬記憶體:磁碟空間虛擬出的記憶體
3.記憶體飆公升的解決方法
通過設定 config, shard cachesize的大小,限制mongo對記憶體的使用率
4.mongo命令:
1.mongo檢視連線數目
db.serverstatus().connections
2.使用mongos連線mongo資料庫
mongo 10.201.82.18:20000
20000是mongos的啟動埠而不是mongo的啟動埠
3.檢視集合條數
db.demo_collection.find().count();
4.檢視集合索引
db.demo_collection.getindexes()
5.檢視正在進行的查詢
6.檢視記憶體使用情況
db.serverstatus().mem
7.檢視當前正在進行的操作
db.currentop()
8.cachesizegb設定mongo能使用的記憶體
9.檢視執行緒快取使用的記憶體
db.serverstatus().tcmalloc
限制mongo記憶體的使用:
故障排查 記憶體使用率過高
本篇將介紹伺服器記憶體使用率過高的處理方案。記憶體方面主要關注兩個問題,第一 物理記憶體夠不夠用 第二 有沒有記憶體洩露。在linux系統中,free top vmstat等命令都會有系統記憶體使用率的輸出 程序占用 過多 執行時間太久 被植入異常木馬 記憶體洩漏 檢視記憶體佔用率top10的程序 ...
頻繁讀寫檔案導致記憶體使用率過高
最近接到乙個客戶反饋,說是伺服器記憶體使用過高,總記憶體16g,使用top命令檢視可用記憶體已經不足1g了。客戶環境伺服器為linux,部署了3個tomcat,每個tomcat均有大量的日誌產生。讓客戶使用free m檢查一下 此處有必要解釋一下free命令返回的各個引數的意思 直接轉了 解釋 可用...
Redis 記憶體使用率
1 redis cli命令列介面訪問到redis伺服器 2 輸入info memory命令,返回與記憶體相關的資料。used memory 由 redis 分配器分配的記憶體總量,包含了redis程序內部的開銷和資料占用的記憶體,以位元組 byte 為單位 used memory human 已更直...