查閱代碼發(fā)現(xiàn)內(nèi)存達(dá)到重啟條件后執(zhí)行了posix_kill($pid, SIGINT);
,看起來并不是平滑的重啟
,隨后我對這個(gè)猜想進(jìn)行了驗(yàn)證
1、將重啟內(nèi)存閾值調(diào)低到30M
(memory_limit)
2、將內(nèi)存檢測周期由原來的60s
改為10s
3、程序內(nèi)有意加載更多的文件,并存儲于靜態(tài)數(shù)組中
以上3點(diǎn)都是在原規(guī)則下,盡快和頻繁的觸發(fā)內(nèi)存超限重啟
1、直接在觸發(fā)重啟的位置來個(gè)輸出
2、監(jiān)控進(jìn)程的內(nèi)存使用情況來核對觸發(fā)情況
3、壓測日志,在頻繁的重啟中出現(xiàn)了錯(cuò)誤的請求,概率是萬分之一,但是看人品,運(yùn)氣差第一輪就會掛一個(gè)請求
4、重啟日志
5、被壓測的文件和方法