laravel中Redis隊列監(jiān)聽中斷的分析
1、linxu掛起隊列監(jiān)聽
nohup php artisan queue:listen --timeout=90 --tries=1 >> /dev/null 2>&1 &
2、發(fā)現(xiàn)問題(日志)
In Process.php line 429: The process has been sinaled with signal "1".
3、查詢資料(linux信號中斷)
標志 | 信號值 | 默認處理動作 | 發(fā)出信號的原因 |
---|---|---|---|
SIGHUP | 1 | A | 終端掛起或者控制進程終止 |
SIGINT | 2 | A | 鍵盤中斷(如break鍵被按下) |
SIGQUIT | 3 | C | 鍵盤的退出鍵被按下 |
SIGILL | 4 | C | 非法指令 |
SIGABRT | 6 | C | 由abort(3)發(fā)出的退出指令 |
SIGFPE | 8 | C | 浮點異常 |
SIGKILL | 9 | AEF | Kill信號 |
SIGSEGV | 11 | C | 無效的內(nèi)存引用 |
SIGPIPE | 13 | A | 管道破裂: 寫一個沒有讀端口的管道 |
SIGALRM | 14 | A | 由alarm(2)發(fā)出的信號 |
SIGTERM | 15 | A | 終止信號 |
SIGUSR1 | 30,10,16 | A | 用戶自定義信號1 |
SIGUSR2 | 31,12,17 | A | 用戶自定義信號2 |
SIGCHLD | 20,17,18 | B | 子進程結(jié)束信號 |
SIGSEGV | 19,18,25 | A | 進程繼續(xù)(曾被停止的進程) |
SIGSTOP | 17,19,23 | DEF | 終止進程 |
SIGTSTP | 18,20,24 | D | 控制終端(tty)上按下停止鍵 |
SIGTTIN | 21,21,26 | D | 后臺進程企圖從控制終端讀 |
SIGTTOU | 22,22,27 | D | 后臺進程企圖從控制終端寫 |
處理動作一項中的字母含義如下
A 缺省的動作是終止進程
B 缺省的動作是忽略此信號,將該信號丟棄,不做處理
C 缺省的動作是終止進程并進行內(nèi)核映像轉(zhuǎn)儲(dump core),內(nèi)核映像轉(zhuǎn)儲是指將進程數(shù)據(jù)在內(nèi)存的映像和進程在內(nèi)核結(jié)構(gòu)中的部分內(nèi)容以一定格式轉(zhuǎn)儲到文件系統(tǒng),并且進程退出執(zhí)行,這樣做的好處是為程序員提供了方便,使得他們可以得到進程當時執(zhí)行時的數(shù)據(jù)值,允許他們確定轉(zhuǎn)儲的原因,并且可以調(diào)試他們的程序。
D 缺省的動作是停止進程,進入停止狀況以后還能重新進行下去,一般是在調(diào)試的過程中(例如ptrace系統(tǒng)調(diào)用)
E 信號不能被捕獲
F 信號不能被忽略
3、驗證問題:
- 根據(jù)日志提示的信號值1,對應(yīng)資料中的說明 終端掛起或者控制進程終止,
- 調(diào)用nohup時指向日志,不使用&后臺運行,然后直接關(guān)閉終端日志中出現(xiàn)上述的錯誤提示,問題顯然是終端被終止,
- 更進一步要找的為什么后臺運行的命令會被終止。
4、結(jié)論
待進一步測試。
總結(jié)
到此這篇關(guān)于laravel中Redis隊列監(jiān)聽中斷的文章就介紹到這了,更多相關(guān)laravel Redis隊列監(jiān)聽中斷內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
PHP中加速、緩存擴展的區(qū)別和作用詳解(eAccelerator、memcached、xcache、APC )
這篇文章主要介紹了PHP中eAccelerator、memcached、xcache、APC 4個加速、緩存擴展的區(qū)別的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-07-07php設(shè)計模式之工廠模式用法經(jīng)典實例分析
這篇文章主要介紹了php設(shè)計模式之工廠模式用法,結(jié)合具體實例形式分析了php工廠模式相關(guān)原理、定義、用法及操作注意事項,需要的朋友可以參考下2019-09-09