workerman以守護(hù)進(jìn)程的方式運(yùn)行正常,開啟了。但是隔天查看。status顯示not run的。這是什么原因造成的 大佬們有類似的經(jīng)歷嗎
首先這個肯定不是workerman的問題,最大的可能是程序發(fā)生了內(nèi)存泄漏,所有的workeman進(jìn)程都被系統(tǒng)干掉了,可以通過檢查 workerman.log 里是否有異常報(bào)告以及運(yùn)行系統(tǒng)命令 dmesg 看看是否有 OOM 關(guān)鍵字來進(jìn)行排查。
手冊有說明:
65280:導(dǎo)致這個退出碼的原因是業(yè)務(wù)代碼有致命錯誤,例如調(diào)用了不存在的函數(shù)、語法錯誤等,具體錯誤信息會記錄到Worker::logFile指定的文件中,也可以在php.ini中error_log指定的文件中(如果有指定的話)找到。
這個65280已經(jīng)很明顯的說明了你的業(yè)務(wù)代碼自身有問題,從業(yè)務(wù)代碼自身排查解決即可,另外最好設(shè)定下 Worker::logFile,以便排查具體錯誤。