假設我們有某種項目,這些項目可以由用戶評分。我應該將項目評分和項目數據存儲在不同的內存緩存鍵中嗎?我應該將項目評分和項目數據存儲在分開的內存緩存鍵中嗎?
從邏輯上講,我們應該保持對主要項目數據的評級,因爲項目數據變化非常少,但是評級變化更頻繁。當有人評價該項目時,我應該僅使項目評分鍵失效,而不是整個項目。
爲什麼我問這個問題?例如,我有每頁100個項目....
- 我越來越項ID此頁面= 1周的memcache「查詢」
- 我得到項目數據頁面上的每個項目ID = 100內存緩存「查詢」
- 我越來越項評級在頁面= 100內存緩存每個項目編號「查詢」
總:201內存緩存「查詢」
存儲項目ř與主要數據一起在一個鍵中,我們將只獲得101 memcache「查詢」。
那麼,最佳實踐是什麼? 我真的很擔心每頁的memcache「查詢」數量。或者我不應該擔心它?
謝謝。
如果我們將添加「favourited times」,「number的評論「等 - 我們將有更多的memcache」查詢「。中庸之道在哪裏? – Kirzilla 2010-02-22 13:45:35
或者,也許我們可以通過更改緩存數據而不是刪除整個密鑰來避免使緩存無效? – Kirzilla 2010-02-22 15:29:46