laravel中Redis队列监听中断的分析

2025-11-08 0 159

1、linxu挂起队列监听

nohup php artisan queue:listen timeout=90 tries=1 >> /dev/null 2>&1 &

2、发现问题(日志)

In Process.php line 429: The process has been sinaled with signal “1”.

3、查询资料(linux信号中断)

标志信号值默认处理动作发出信号的原因SIGHUP1A终端挂起或者控制进程终止SIGINT2A键盘中断(如break键被按下)SIGQUIT3C键盘的退出键被按下SIGILL4C非法指令SIGABRT6C由abort(3)发出的退出指令SIGFPE8C浮点异常SIGKILL9AEFKill信号SIGSEGV11C无效的内存引用SIGPIPE13A管道破裂: 写一个没有读端口的管道SIGALRM14A由alarm(2)发出的信号SIGTERM15A终止信号SIGUSR130,10,16A用户自定义信号1SIGUSR231,12,17A用户自定义信号2SIGCHLD20,17,18B子进程结束信号SIGSEGV19,18,25A进程继续(曾被停止的进程)SIGSTOP17,19,23DEF终止进程SIGTSTP18,20,24D控制终端(tty)上按下停止键SIGTTIN21,21,26D后台进程企图从控制终端读SIGTTOU22,22,27D后台进程企图从控制终端写

处理动作一项中的字母含义如下

A 缺省的动作是终止进程

B 缺省的动作是忽略此信号,将该信号丢弃,不做处理

C 缺省的动作是终止进程并进行内核映像转储(dump core),内核映像转储是指将进程数据在内存的映像和进程在内核结构中的部分内容以一定格式转储到文件系统,并且进程退出执行,这样做的好处是为程序员提供了方便,使得他们可以得到进程当时执行时的数据值,允许他们确定转储的原因,并且可以调试他们的程序。

D 缺省的动作是停止进程,进入停止状况以后还能重新进行下去,一般是在调试的过程中(例如ptrace系统调用)

E 信号不能被捕获

F 信号不能被忽略

3、验证问题:

根据日志提示的信号值1,对应资料中的说明 终端挂起或者控制进程终止,

调用nohup时指向日志,不使用&后台运行,然后直接关闭终端日志中出现上述的错误提示,问题显然是终端被终止,

更进一步要找的为什么后台运行的命令会被终止。

4、结论

待进一步测试。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

遇见资源网 后端开发 laravel中Redis队列监听中断的分析 https://www.ox520.com/5356.html

常见问题

相关文章

猜你喜欢
发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务