Laravel回显服务器抛出Redis和队列异常



我用 laravel 5.4 实现了实时聊天,用 redis 和队列实现了 laravel-echo。我在队列方面遇到了一些问题,以下是一些代码参数

主管设置如下

[program:qwikkar-staging-queue-worker]
process_name=%(program_name)s_%(process_num)02d
command=sudo php /var/www/html/Qwikkar_staging/artisan queue:work --sleep=10 --tries=3 --daemon
autostart=true
autorestart=true
user=ubuntu
numprocs=1
redirect_stderr=true
stdout_logfile=/var/www/html/Qwikkar_staging/storage/logs/queue-worker.log

.env 设置如下

BROADCAST_DRIVER=redis
CACHE_DRIVER=file
SESSION_DRIVER=file
QUEUE_DRIVER=redis
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379

laravel.logs文件中的错误日志

IlluminateQueueMaxAttemptsExceededException: A queued job has been attempted too many times. The job may have previously timed out. 
in /var/www/html/Qwikkar_staging/vendor/laravel/framework/src/Illuminate/Queue/Worker.php:383
Stack trace:
#0 /var/www/html/Qwikkar_staging/vendor/laravel/framework/src/Illuminate/Queue/Worker.php(311): IlluminateQueueWorker->markJobAsFailedIfAlreadyExceedsMaxAttempts('redis', Object(IlluminateQueueJobsRedisJob), 3)
#1 /var/www/html/Qwikkar_staging/vendor/laravel/framework/src/Illuminate/Queue/Worker.php(267): IlluminateQueueWorker->process('redis', Object(IlluminateQueueJobsRedisJob), Object(IlluminateQueueWorkerOptions))
#2 /var/www/html/Qwikkar_staging/vendor/laravel/framework/src/Illuminate/Queue/Worker.php(113): IlluminateQueueWorker->runJob(Object(IlluminateQueueJobsRedisJob), 'redis', Object(IlluminateQueueWorkerOptions))
#3 /var/www/html/Qwikkar_staging/vendor/laravel/framework/src/Illuminate/Queue/Console/WorkCommand.php(101): IlluminateQueueWorker->daemon('redis', 'default', Object(IlluminateQueueWorkerOptions))
#4 /var/www/html/Qwikkar_staging/vendor/laravel/framework/src/Illuminate/Queue/Console/WorkCommand.php(85): IlluminateQueueConsoleWorkCommand->runWorker('redis', 'default')
#5 [internal function]: IlluminateQueueConsoleWorkCommand->fire()
#6 /var/www/html/Qwikkar_staging/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(29): call_user_func_array(Array, Array)
#7 /var/www/html/Qwikkar_staging/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(87): IlluminateContainerBoundMethod::IlluminateContainer{closure}()
#8 /var/www/html/Qwikkar_staging/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(31): IlluminateContainerBoundMethod::callBoundMethod(Object(IlluminateFoundationApplication), Array, Object(Closure))
#9 /var/www/html/Qwikkar_staging/vendor/laravel/framework/src/Illuminate/Container/Container.php(539): IlluminateContainerBoundMethod::call(Object(IlluminateFoundationApplication), Array, Array, NULL)
#10 /var/www/html/Qwikkar_staging/vendor/laravel/framework/src/Illuminate/Console/Command.php(182): IlluminateContainerContainer->call(Array)
#11 /var/www/html/Qwikkar_staging/vendor/symfony/console/Command/Command.php(264): IlluminateConsoleCommand->execute(Object(SymfonyComponentConsoleInputArgvInput), Object(IlluminateConsoleOutputStyle))
#12 /var/www/html/Qwikkar_staging/vendor/laravel/framework/src/Illuminate/Console/Command.php(167): SymfonyComponentConsoleCommandCommand->run(Object(SymfonyComponentConsoleInputArgvInput), Object(IlluminateConsoleOutputStyle))
#13 /var/www/html/Qwikkar_staging/vendor/symfony/console/Application.php(874): IlluminateConsoleCommand->run(Object(SymfonyComponentConsoleInputArgvInput), Object(SymfonyComponentConsoleOutputConsoleOutput))
#14 /var/www/html/Qwikkar_staging/vendor/symfony/console/Application.php(228): SymfonyComponentConsoleApplication->doRunCommand(Object(IlluminateQueueConsoleWorkCommand), Object(SymfonyComponentConsoleInputArgvInput), Object(SymfonyComponentConsoleOutputConsoleOutput))
#15 /var/www/html/Qwikkar_staging/vendor/symfony/console/Application.php(130): SymfonyComponentConsoleApplication->doRun(Object(SymfonyComponentConsoleInputArgvInput), Object(SymfonyComponentConsoleOutputConsoleOutput))
#16 /var/www/html/Qwikkar_staging/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(122): SymfonyComponentConsoleApplication->run(Object(SymfonyComponentConsoleInputArgvInput), Object(SymfonyComponentConsoleOutputConsoleOutput))
#17 /var/www/html/Qwikkar_staging/artisan(35): IlluminateFoundationConsoleKernel->handle(Object(SymfonyComponentConsoleInputArgvInput), Object(SymfonyComponentConsoleOutputConsoleOutput))
#18 {main}

重置是一切都很好 消息被发布,保存在数据库中并完美地列在套接字上。 遵循主管状态"主管CTL"显示

qwikkar-stagin-echo-server-worker:qwikkar-stagin-echo-server-worker_00 RUNNING pid 9187, uptime 2 days, 19:07:12

qwikkar-staging-queue-worker:qwikkar-staging-queue-worker_00 RUNNING pid 9190, uptime 2 days, 19:07:12

只需删除--sleep=10 --tries=3 --daemon,然后使用此命令更新您的主管 sudo supervisor update 并尝试启动程序

sudo supervisorctl

supervisor> start qwikkar-stagin-echo-server-worker:qwikkar-stagin-echo-server-worker_00

希望我能帮助你..

最新更新