網游服務器減少數據庫操作
(金慶的專欄)
所有有限大小的數據都讀入內存,在內存中處理。
如玩家的背包,玩家的技能。
盡量為數據作一個大小限制,使之可以讀入內存處理。
如玩家的好友,如果不限制個數,就應該在數據庫中處理,每次都要查詢數據庫。
但是如果限制好友個數為1k, 就可以讀入內存處理。
對于無限大小的數據,應該在數據庫處理,因為讀入內存可能占用太大。
如一個玩家可以被無數玩家列為黑名單,無法對此作出個數限制。
所以判斷玩家是否被列黑只能讀數據庫。
可以用一個代理進程讀取部分數據,在內存中處理,以加快速度。
大部分數據仍在數據庫,需要時才會讀取。
(金慶的專欄)
所有有限大小的數據都讀入內存,在內存中處理。
如玩家的背包,玩家的技能。
盡量為數據作一個大小限制,使之可以讀入內存處理。
如玩家的好友,如果不限制個數,就應該在數據庫中處理,每次都要查詢數據庫。
但是如果限制好友個數為1k, 就可以讀入內存處理。
對于無限大小的數據,應該在數據庫處理,因為讀入內存可能占用太大。
如一個玩家可以被無數玩家列為黑名單,無法對此作出個數限制。
所以判斷玩家是否被列黑只能讀數據庫。
可以用一個代理進程讀取部分數據,在內存中處理,以加快速度。
大部分數據仍在數據庫,需要時才會讀取。