提交訂單效能優化系列之016-快取商品
阿新 • • 發佈:2018-12-13
概括總結
這一版測試把商品資訊存在記憶體中,而不是每次都查詢資料庫。結果是:查詢快取比查詢資料庫的效能好5.28%
。
016版本更新說明
測試結果
統計10次測試的平均值之後:
Version016NoCache
提交每個訂單平均耗時的納秒數: 4674079
Version016WithCache
提交每個訂單平均耗時的納秒數: 4330435
Version016NoCache
每秒鐘可以提交的訂單數: 214
Version016WithCache
每秒鐘可以提交的訂單數: 232
效能差別為:(4674079 - 4330435) / 4330435 * 100% = 3.65%,即 “查詢快取” 比 “查詢資料庫” 效能好5.28%
。
【備註】:不同的機器上的測試結果會不一樣,以上測試結果僅供參考。
測試結果說明
查快取當然會比查資料庫效能好一些。這次測試的目的不是為了證明它好,而是為了測試到底好多少。
值得一提的是,由於我們在這個系列的第011篇已經放棄在Java程式碼中同步驗證庫存,因此GoodsCache.java類中沒有使用synchronized
來約束。(一旦使用了synchronized
來約束,效能會比查詢資料庫還要低)。