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