国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

關(guān)于webman多進(jìn)程的一個(gè)問(wèn)題

tianya

我在webman的server.php中設(shè)置了count=10,10個(gè)進(jìn)程。
然后index控制器中寫入了sleep(1),其他沒(méi)有改動(dòng)。

內(nèi)網(wǎng)中使用php的curl_multi發(fā)起了20個(gè)并發(fā)請(qǐng)求到webman中,在我的理想中應(yīng)該是2秒結(jié)束curl的運(yùn)行(10個(gè)進(jìn)程處理20個(gè)請(qǐng)求,分兩批唄,各占用1秒),但實(shí)際上用了4秒 甚至更多。
然后我將curl_multi改為了10個(gè)并發(fā)請(qǐng)求,理想中應(yīng)該是1秒完成,但測(cè)試結(jié)果發(fā)現(xiàn)還是2秒或更多
繼續(xù)修改,將curl_multi改為5個(gè)并發(fā)請(qǐng)求,心想著count=10,我這5個(gè)請(qǐng)求怎么著也是一起完成吧?測(cè)試后發(fā)現(xiàn)還是1~2秒中跳動(dòng),即便我將count=100或更多都是一樣的結(jié)果。
然后在sleep(1)前加了一個(gè)echo time(); 在控制臺(tái)發(fā)現(xiàn)感覺(jué)不管我curl_multi訪問(wèn)多少個(gè)請(qǐng)求,都是對(duì)半處理,永遠(yuǎn)無(wú)法同時(shí),10個(gè)并發(fā) webman就同時(shí)處理5個(gè),100個(gè)并發(fā)那就同時(shí)處理50個(gè)。

嘗試了安裝了event,將配置文件reusePort=true都無(wú)果。

想問(wèn)下,這是什么原因,謝謝各位大佬。

2407 3 1
3個(gè)回答

xiuwang

使用linux系統(tǒng),并開(kāi)啟reusePort 。
提示 macOS 不支持reusePort,反正我macOS測(cè)試reusePort沒(méi)效果。

  • 暫無(wú)評(píng)論
jianqi

認(rèn)真看手冊(cè)噢,代碼里不可以使用sleep exit die 等

  • tianya 2023-03-08

    加sleep就是為了模擬一下阻塞的等待時(shí)間,想著已經(jīng)多進(jìn)程了,那sleep應(yīng)該不影響其他幾個(gè)進(jìn)程同時(shí)接待的...

ersic

調(diào)度問(wèn)題吧
重啟,發(fā)完請(qǐng)求執(zhí)行 php webman status
看每個(gè)進(jìn)程處理的情況

  • tianya 2023-03-08

    嗯,是調(diào)度問(wèn)題。status看了,空閑的比較閑,大部分請(qǐng)求都集中在幾個(gè)進(jìn)程內(nèi),看了文檔和其他幾個(gè)同類的問(wèn)答帖,具體原因應(yīng)該是webman不會(huì)平均分配進(jìn)程,切換進(jìn)程也有性能消耗,所以就集中在幾個(gè)進(jìn)程內(nèi)處理了。我按照作者大大說(shuō)的reusePort 設(shè)置為ture來(lái)平均分配,但看status結(jié)果來(lái)說(shuō),和沒(méi)開(kāi)啟時(shí)的結(jié)果大差不差,大量并發(fā)時(shí)還是比較集中在某幾個(gè)進(jìn)程內(nèi)。

  • ersic 2023-03-08

    應(yīng)該是你sleep的原因,我做ab測(cè)試的時(shí)候,感覺(jué)分布還挺均勻的。

年代過(guò)于久遠(yuǎn),無(wú)法發(fā)表回答
??