我正在爲用戶創建一個小應用程序來創建集合。我想在那裏有一個評級系統。而現在,因爲我想覆蓋我的所有領域,讓我們假裝我有很多訪問者。性能起作用,尤其是在價格方面。在db中獲取平均值或保留臨時數據 - 性能問題
讓我們假設我有rates
表,在那裏我有id
,game_id
,user_id
和rate
。數據很簡單,每個用戶都有一個條目。我們再假設,有1000個用戶會對一個遊戲進行評分。我想打印出該遊戲子頁面上的平均費率(以及其他地方,如遊戲列表中的平均費率)。現在,我有兩個場景一起去:
每次顯示的遊戲時間獲得
AVG
。在
games
中創建另一列,調用temprate
並存儲遊戲的費率。它會在有人投票時更新。
這兩種情況有明顯的缺陷。第一個對我的主機來說更加緊張,因爲它確實會消耗更多的電源。 Secound在評級時更多地工作(獲取所有遊戲數據,提交速度,獲得新的AVG
)。
請指教一下,我應該選擇哪種場景?或者,也許你有其他想法?
我使用PDO而沒有框架。
(3)保持在平均Memcache等緩存。 – Wrikken
有點相關的問題 - 用戶可以不止一次地給一個給定的遊戲打分嗎? –
Wrikken - memcache看起來非常非常好。你能否給我更多的細節(直截了當,沒有深入研究文檔)?我仍在考慮要走的路。 Girish Rao - 是和否。用戶可以更改他的投票,這將被視爲更新,而不是新記錄。 –