wokerman中可以通過static將數(shù)據(jù)常駐在內(nèi)存中,那么經(jīng)gateway分發(fā)以后的worker在訪問同一個static數(shù)據(jù)時(如常駐于內(nèi)存的 棋牌游戲的所有房間信息),是否存在臟數(shù)據(jù)的隱患,希望各位大大不吝賜教。
每個進(jìn)程都有自己的static數(shù)據(jù),他們是完全分離的,某個進(jìn)程static數(shù)據(jù)變化時不會同步數(shù)據(jù)給其它進(jìn)程。
所以
1、經(jīng)常變更的全局?jǐn)?shù)據(jù)最好存儲在mysql、redis等存儲中,或者通過進(jìn)程間通訊方法做實時數(shù)據(jù)同步。
2、不變更的數(shù)據(jù)可以一次全部載入賦值給static變量
3、偶爾變更的數(shù)據(jù)并且對及時性要求不高的場景(例如用戶黑名單),可以用static變量存儲,然后定時(例如1秒)從存儲中讀取最新數(shù)據(jù)。