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