php進(jìn)程中數(shù)組占用5Gb內(nèi)存,隨著不斷循環(huán)計(jì)算數(shù)據(jù)在不斷的變化。
?
其他進(jìn)程,如何去讀取這個(gè)數(shù)組里面的數(shù)據(jù)?通過redis、GlobalData等都不行,因?yàn)橐4娴絩edis、GlobalData需要先把數(shù)組序列化,然后保存。然后讀取的又需要反序列化,非常耗時(shí)間
?
有沒有什么辦法?求各位大佬指點(diǎn)迷津
進(jìn)程間實(shí)時(shí)同步5G的數(shù)據(jù)最好是增量同步,既同步只同步改變的部分,不改變的部分不用同步,這樣可以大大加快同步速度。但是這樣對(duì)于開發(fā)者要求較高,并且容易出現(xiàn)數(shù)據(jù)不一致。
?
最好的方法就是只用一個(gè)進(jìn)程裝這5G數(shù)據(jù),需要這5G數(shù)據(jù)的時(shí)候向這個(gè)進(jìn)程發(fā)起請(qǐng)求獲得所需數(shù)據(jù)。另外redis也有豐富的數(shù)據(jù)結(jié)構(gòu)比如hash 都可以做到只同步某個(gè)key的數(shù)據(jù),而不用把所有數(shù)據(jù)獲取出來再存進(jìn)去。