1. 程式人生 > >提交訂單效能優化系列之016-快取商品

提交訂單效能優化系列之016-快取商品

概括總結

這一版測試把商品資訊存在記憶體中,而不是每次都查詢資料庫。結果是:查詢快取比查詢資料庫的效能好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來約束,效能會比查詢資料庫還要低)。

原始碼