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