在一個(gè)Worker類中能否指定某個(gè)進(jìn)程進(jìn)行客戶端連接,某個(gè)進(jìn)程進(jìn)行業(yè)務(wù)數(shù)據(jù)處理,并且這些進(jìn)程間還要能夠進(jìn)行數(shù)據(jù)交互。
比如: 我在一個(gè)Worker中開設(shè)2個(gè)進(jìn)程(A進(jìn)程和B進(jìn)程), A進(jìn)程負(fù)責(zé)客戶端的連接, B進(jìn)程負(fù)責(zé)數(shù)據(jù)處理,同時(shí)A進(jìn)程和B進(jìn)程還能夠進(jìn)行數(shù)據(jù)交互,這怎么實(shí)現(xiàn)?
多進(jìn)程環(huán)境下,對端連接上來以后,到底由哪個(gè)進(jìn)程來調(diào)度處理,這是由系統(tǒng)內(nèi)核決定的,應(yīng)用層面沒有調(diào)度權(quán);不過你可以換一種思路,開啟多個(gè)不同的worker,這樣不同的worker擔(dān)任不同的處理角色;至于不同進(jìn)程之間的IPC,那通信手段就多了,比如socket、管道、共享內(nèi)存、隊(duì)列等等。
謝謝,就是要開設(shè)多個(gè)worker來分配不同角色,不能一個(gè)worker擔(dān)任多個(gè)角色是吧,本來我是想一個(gè)worker擔(dān)任多角色,想把幾個(gè)簡單的業(yè)務(wù)整合在一個(gè)worker中,這樣可以充分利用一個(gè)woker中的多個(gè)進(jìn)程,看來是實(shí)現(xiàn)不了,必需開設(shè)多個(gè)worker去實(shí)現(xiàn)了。