在你已經(jīng)安裝部署并允許MongoDB服務(wù)后,你必須要了解MongoDB的運(yùn)行情況,并查看MongoDB的性能。這樣在大流量得情況下可以很好的應(yīng)對并保證MongoDB正常運(yùn)作。
MongoDB中提供了mongostat 和 mongotop 兩個命令來監(jiān)控MongoDB的運(yùn)行情況。
mongostat是mongodb自帶的狀態(tài)檢測工具,在命令行下使用。它會間隔固定時間獲取mongodb的當(dāng)前運(yùn)行狀態(tài),并輸出。如果你發(fā)現(xiàn)數(shù)據(jù)庫突然變慢或者有其他問題的話,你第一手的操作就考慮采用mongostat來查看mongo的狀態(tài)。
啟動你的Mongod服務(wù),進(jìn)入到你安裝的MongoDB目錄下的bin目錄, 然后輸入mongostat命令,如下所示:
D:\set up\mongodb\bin>mongostat
以上命令輸出結(jié)果如下:
mongotop也是mongodb下的一個內(nèi)置工具,mongotop提供了一個方法,用來跟蹤一個MongoDB的實例,查看哪些大量的時間花費(fèi)在讀取和寫入數(shù)據(jù)。 mongotop提供每個集合的水平的統(tǒng)計數(shù)據(jù)。默認(rèn)情況下,mongotop返回值的每一秒。
啟動你的Mongod服務(wù),進(jìn)入到你安裝的MongoDB目錄下的bin目錄, 然后輸入mongotop命令,如下所示:
D:\set up\mongodb\bin>mongotop
以上命令執(zhí)行輸出結(jié)果如下:
帶參數(shù)實例
E:\mongodb-win32-x86_64-2.2.1\bin>mongotop 10
后面的10是<sleeptime>參數(shù) ,可以不使用,等待的時間長度,以秒為單位,mongotop等待調(diào)用之間。通過的默認(rèn)mongotop返回數(shù)據(jù)的每一秒。
E:\mongodb-win32-x86_64-2.2.1\bin>mongotop --locks
報告每個數(shù)據(jù)庫的鎖的使用中,使用mongotop - 鎖,這將產(chǎn)生以下輸出:
輸出結(jié)果字段說明:
包含數(shù)據(jù)庫命名空間,后者結(jié)合了數(shù)據(jù)庫名稱和集合。
db:
包含數(shù)據(jù)庫的名稱。名為 . 的數(shù)據(jù)庫針對全局鎖定,而非特定數(shù)據(jù)庫。
total:
mongod花費(fèi)的時間工作在這個命名空間提供總額。
read:
提供了大量的時間,這mongod花費(fèi)在執(zhí)行讀操作,在此命名空間。
write:
提供這個命名空間進(jìn)行寫操作,這mongod花了大量的時間。
更多建議: