假如有100個(gè)定時(shí)器,怎么樣才能各自執(zhí)行各自的任務(wù),而不是按順序來(lái)執(zhí)行?謝謝
那你可能需要開(kāi) 100 個(gè)進(jìn)程了……Workerman 是單進(jìn)程單線程模式的。
其實(shí)本質(zhì)上還是要看你那些【任務(wù)】是屬于 IO 密集型還是 CPU 密集型,如果是前者的話,單個(gè)進(jìn)程足以應(yīng)付。如果是后者的話,是應(yīng)當(dāng)考慮用多進(jìn)程來(lái)分擔(dān)的,當(dāng)然,“開(kāi) 100 個(gè)進(jìn)程”可能太簡(jiǎn)單粗暴了,可以考慮用進(jìn)程池來(lái)處理。
謝謝,我主要目的是處理游戲房間的倒計(jì)時(shí),房間都存在REDIS應(yīng)該屬于IO密集型,感覺(jué)如果太多房間,每一秒返回客戶(hù)端時(shí)間會(huì)卡頓,不順暢,有什么好建議嗎?感激不盡
不太清楚你說(shuō)的【游戲房間的倒計(jì)時(shí)】具體是怎樣的應(yīng)用邏輯,不好給出什么建議。
有一點(diǎn)需要提醒你,也許對(duì)你的設(shè)計(jì)思路有影響:redis 對(duì)所有的請(qǐng)求都是串行執(zhí)行的,因?yàn)?redis server 是單線程的。
@3346:好的,感謝提醒,游戲房間的倒計(jì)時(shí) 比如等待玩家準(zhǔn)備,這時(shí)候服務(wù)器需要倒計(jì)時(shí)時(shí)間,這樣子。