小量數(shù)據(jù)需要在work進程間交換,其中只有一個work進程在寫數(shù)據(jù),其它work進程讀取數(shù)據(jù),嘗試使用PHP自帶的SHMOP來共享數(shù)據(jù),但是這也涉及各進程獲取shmop_open()返回的資源標識符問題,請教下如何在各work進程里獲取shmop_open()返回的資源標識符?
1、如果用到MYSQL、REDIS等的話,就沒必要用SHMOP了,mysql、redis足夠處理本應(yīng)用的并發(fā)了,但是因為數(shù)據(jù)量小,然而新數(shù)據(jù)產(chǎn)生比較密集,又不要求可靠性,只重視IO效率,所以MYSQL、REDIS等存儲的連接及其它開銷,就舍棄了他們;
2、GlobalData或者Channel等組件,需要對應(yīng) C / S端,覺得小數(shù)據(jù)量用不上這些組件,略顯沉重。
使用文本文件存儲標識符如何?會不會影響處理效率?
請教下@walkor,是否還有其他可行方法?
gateway開了8個BusinessWorker work進程,其中只有ID=0進程產(chǎn)生數(shù)據(jù),利用SHMOP寫入內(nèi)存,其他七個進程需要讀取ID=0進程創(chuàng)建的內(nèi)存,這七個進程如何獲取ID=0創(chuàng)建的資源標識符?