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

在生產(chǎn)環(huán)境restart之后 程序沒有完全停止導(dǎo)致端口被占用

twobody

問題描述

在生產(chǎn)環(huán)境中 php start.php restart之后
Fatal error: Uncaught Exception: Address already in use in

程序代碼或配置

29403

重現(xiàn)問題的步驟

第一次的stopping的日志是正常輸出的,因?yàn)閜id文件中的pid值和系統(tǒng)的對的上,然后看了下只stop了兩個(gè)pid,導(dǎo)致start的時(shí)候端口被占用了。
截圖
截圖

操作系統(tǒng)環(huán)境及workerman/webman等具體版本

這里寫具體的系統(tǒng)環(huán)境相關(guān)信息
php版本 8.1
系統(tǒng)是centos
本地mac運(yùn)行沒這個(gè)問題

846 1 0
1個(gè)回答

walkor 打賞

出現(xiàn)這個(gè)問題一般是因?yàn)閞untime下的pid文件和系統(tǒng)實(shí)際情況不一致導(dǎo)致的,
stop時(shí)會通過pid文件找到進(jìn)程,然后停止。如果pid文件里的記錄值是錯(cuò)的導(dǎo)致無法停止之前的進(jìn)程,再次啟動時(shí)會報(bào)占用錯(cuò)誤。

造成pid文件不一致的原因一般是將錯(cuò)誤的將pid文件放到了代碼庫,或者上傳文件時(shí)上傳了本地的pid等原因。
另外如果有手動kill了workerman的主進(jìn)程,子進(jìn)程還存在,也會有此問題。

社區(qū)里反饋有一些擴(kuò)展影響了php的行為例如grpc擴(kuò)展沒有正確配置也會類似問題。

如果不是以上原因需要自己定位下,停止前cat下pid文件值,運(yùn)行 ps auxf 看下進(jìn)程樹,看下是否對應(yīng)。stop后 ps auxf 看下進(jìn)程樹是否正確。

  • 軟飯工程師 2024-01-11

    如果某些操作導(dǎo)致主進(jìn)程被殺死,子進(jìn)程還在運(yùn)行,php start.php stop 提示no run,php start.php start 提示端口被占用,這種情況有什么比較好的辦法嗎,只能手動一個(gè)個(gè)把子進(jìn)程殺死?

  • walkor 2024-01-11

    一個(gè)一個(gè)殺死

  • twobody 2024-01-12

    感謝回復(fù),目前沒有再出現(xiàn)過

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