如題,是搞棋牌游戲的。反正玩家只和自己房間的人有交互,那么我將原來的單進程改成多進程,從“8000一個端口”改成“8000/8001/8002”去干活,響應速度是會加快的?(現(xiàn)在估計有1000人同時在線)
1、一般的CPU多核的情況下才能充分發(fā)揮多進程的優(yōu)勢,因為單核的話多進程開銷也很大,不一定效率最好;
2、在多核前提下,順著你的思路,建議根據(jù)端口比如8001/8002/8003等分別建立多個worker實例,但是每個worker實例設(shè)置成單進程模型,這也算是一種特殊的多進程模型,端口獨立還便于部署集群,既提升效率也便于擴展;
3、之所以推薦每個worker實例設(shè)置為單進程模型,主要是為了方便單進程內(nèi)或同一房間內(nèi)的用戶進行通訊;
4、棋牌類游戲通訊量一般比較小,單進程內(nèi)支持千人甚至上萬人不在話下;
1、一般的在CPU多核的情況下才能充分發(fā)揮多進程的效率優(yōu)勢,(因為單核的話多進程切換開銷是很大的,不一定效率最高);
2、根據(jù)你更改的思路,建議根據(jù)8000/8001/8002等等這些端口建立多個不同的worker實例,然后每個worker實例都設(shè)置成單進程模型,這樣算是一種特殊的多進程模型,端口獨立也便于集群部署,所以既能提升效率也便于擴展;
3、之所以推薦單個worker實例設(shè)置為單進程模型,主要是為了方便同一個進程內(nèi)或者房間內(nèi)的用戶進行通訊;
4、最后就是棋牌類游戲一般通訊量比較小,單進程支持上千人甚至上萬人不在話下;