使用webman2.1后,一段時(shí)間CPU飆升,某些進(jìn)程CPU飆升,沒有處理任何請求。
cpu 飆升的時(shí)候執(zhí)行下 top 和 php start.php status 截圖下。
swow底層會(huì)自動(dòng)hook php的一些阻塞函數(shù),即使沒有使用swow也會(huì)影響php的默認(rèn)行為,并且它不像swoole有關(guān)閉選項(xiàng)。
又因?yàn)閟wow沒有很好的兼容php的某些默認(rèn)行為,例如stream_select時(shí)信號打斷處理,某些情況下消息可讀事件丟失等。這會(huì)導(dǎo)致安裝swow但是沒有使用swow的eventLoop時(shí)可能會(huì)產(chǎn)生隱含的bug。
因?yàn)槭堑讓有薷牧薖HP的默認(rèn)行為,這個(gè)無法很好的在workerman層面解決。
所以建議: