比如:同時有30個房間的消息需要進行分析計算,有耗時業(yè)務,但對時間要求高,不能一個個處理,要一起處理。之前用編譯語言都是多線程處理,開30個線程同步進行。
webman里我應該用什么?
1、隊列不行吧,隊列是先進先出,有了處理順序,時間上肯定有大的差別。不用隊列需要用什么呢? 2、隊列可以多進程消費,那如果我有100個房間,設(shè)置可允許100個進程同時消費,這樣進程這么多,也很不好吧?
謝謝
這個需求換個語言吧.PHP不太適合做這個
喜歡webman。。。。
用隊列就行,開多進程沒問題。
好的
這樣你會遇到問題2,因為沒法保證100個房間都能分配到不同的進程處理
頭疼,開100個進程。有最大90個房間,一個進程有了一個正在消費了,還會去提取隊列任務嗎?一個進程如果有一個在執(zhí)行隊列任務,難道不是其他空閑進程應該先上去拿取隊列任務嗎
進程在消費了不會再去取隊列任務,只有空閑的進程才會去取,所以只要有足夠的進程,任務就會被分散到多個進程處理
嗯