在运行主管队列时,php-worker会在内存中不断增长

Max*_*ver 5 php beanstalkd supervisord laravel laradock

当运行主管队列时,php-worker容器的内存不断增加。(如docker stats中所示) 伊姆古尔

作业完成后,该数字不会减少。当队列保持一段时间的处理作业时,内存达到100%并崩溃。

[program:updater]
process_name=%(program_name)s_%(process_num)02d
command=php /var/www/laravel/artisan queue:work --daemon --sleep=3 --tries=3 --timeout=1800 --queue=updater
autostart=true
autorestart=unexpected
numprocs=20
user=laradock
stdout_logfile=/var/www/laravel/storage/logs/updater.log
Run Code Online (Sandbox Code Playgroud)

我缺少工作后清除内存的东西吗?

编辑1: 日志:

[2019-08-07 16:26:36][4320] Processed:  App\Jobs\UpdateClient
[2019-08-07 16:26:36][4385] Processing:
App\Listeners\Statuses\NewClientCreatedStatuses
[2019-08-07 16:26:36][4385] Processed:  App\Listeners\Statuses\NewClientCreatedStatuses
[2019-08-07 16:26:36][4386] Processing: App\Jobs\UpdateClient
[2019-08-07 16:26:37][4281] Processed:  App\Jobs\UpdateClient
[2019-08-07 16:26:38][4314] Processed:  App\Jobs\UpdateClient
[2019-08-07 16:26:38][4388] Processing: App\Listeners\Statuses\NewClientCreatedStatuses
[2019-08-07 16:26:38][4388] Processed:  App\Listeners\Statuses\NewClientCreatedStatuses
[2019-08-07 16:26:38][4389] Processing: App\Jobs\UpdateClient
[2019-08-07 16:26:40][4391] Processing: App\Listeners\Statuses\NewClientCreatedStatuses
[2019-08-07 16:26:40][4391] Processed:  App\Listeners\Statuses\NewClientCreatedStatuses
[2019-08-07 16:26:41][4368] Processed:  App\Jobs\UpdateClient
[2019-08-07 16:26:41][4392] Processing: App\Jobs\UpdateClient
[2019-08-07 16:26:45][4371] Processed:  App\Jobs\UpdateClient
[2019-08-07 16:26:45][4394] Processing: App\Listeners\Statuses\NewClientCreatedStatuses
[2019-08-07 16:26:45][4394] Processed:  App\Listeners\Statuses\NewClientCreatedStatuses
[2019-08-07 16:26:45][4395] Processing: App\Jobs\UpdateClient
Run Code Online (Sandbox Code Playgroud)

Ptr*_*Ton 2

我认为--daemon旗帜是造成您问题的原因。这将使该进程在后台运行。我的猜测是主管无法再终止该进程,从而导致越来越多的进程正在运行。默认的 laravel 配置也不使用此标志。