測試硬件環境 MacProcss
測試軟件環境緩存
插入數據大小30字節bash
插入條數(單位:萬) | 耗時(單位:毫秒) |
---|---|
1 | 999 |
2 | 2176 |
5 | 5140 |
10 | 10198 |
結論:在當前測試環境下每秒寫入速度爲1萬性能
測試語句測試
db.follower.find({'user_id':1000069, 'follower_id': 1000089}).Limit(1)
讀取條數(單位:萬) | 耗時(單位:毫秒) |
---|---|
1 | 1227 |
2 | 2383 |
5 | 6024 |
10 | 12196 |
結論: 每秒讀取速度 8000spa
測試語句code
mg.C("follower").Find(condition).Sort("-_id").Skip(10000).Limit(10).All()
按照每頁10條計算ip
功能場景 | 耗時(單位:毫秒) |
---|---|
讀取10000條以後的 10條數據 | 15 |
讀取50000條以後的 10條數據 | 70 |
讀取100000條以後的 10條數據 | 140 |
結論:
隨着查詢偏移量的上升(1w, 5w, 10w),查詢耗時出現線性增加。儘可能避免使用 Skip 作爲分頁策略內存
插入數據大小30字節string
一次插入條數 | 耗時(單位:毫秒) | 速度 (單位: 毫秒/條) |
---|---|---|
5000 | 80 | 0.016 |
2000 | 32 | 0.016 |
1000 | 18 | 0.018 |
100 | 2.15 | 0.0215 |
結論:批次插入越多,單位時間越少