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

并發(fā)的時候,worker不能正確的判斷當前哪個進程處于空閑狀態(tài)?

zoofei
$httpworker = new Worker('text://127.0.0.1:8888');
$httpworker->name = 'HttpWorker';
$httpworker->count = 10;

假設有20個處理任務同時發(fā)送到httpworker,收到任務以后,會優(yōu)先發(fā)送給當前空閑的進程處理這個任務,所以初始可以打開10個進程處理任務,等這10個進程處理完了,在處理剩下的10個任務。
實際情況是httpworker收到任務之后只有隨機的三到四個進程在處理任務,其他任務都在這三個進程后面排隊,這就造成了明明有10個進程都可以處理任務,但是實際卻只有少量的進程在處理多個任務。
經過測試,只有“同時”發(fā)送的任務會這樣,如果延時發(fā)送20個任務,那么worker能夠正確的把10個進程都利用起來。

2657 4 0
4個回答

walkor 打賞

操作系統是?

zoofei

同時有很多客人進來,等待空閑的服務生有10個,本來應該一個服務生接待一個客戶,然后告訴客戶,我已經有客戶了,其他客戶去找另外9個空閑的服務生。這樣等10個服務生都有客戶之后,其他的客戶在排隊等待空閑的服務生。
但是現在是一個空閑的服務生,面對同時進來的大量客戶,他會一次接待好幾個,造成有的服務生忙不過來,后面還有還幾個客戶在排隊,而有的服務生就什么都沒干!

  • 暫無評論
walkor 打賞

mac 系統下php不支持reusePort,換成其它linux系統就好了。

  • 暫無評論
zoofei

謝謝你,我在linux下測試情況好點,有時候進程能夠全部利用,但是有時候也是只有8個到9個進程在工作,2個進程空閑。這個是系統問題嗎,需要怎么優(yōu)化?

  • walkor 2019-10-30

    發(fā)到哪個進程是操作系統調度的。不會100%完全平均,請求量大了趨于平均。

年代過于久遠,無法發(fā)表回答
??