如何解决Laravel Horizon 作业在调度了几个作业后停止调度作业
我运行一个队列,该队列将分派数千个作业。但是在调度了几个作业(如 200 个作业)后,作业停止调度。
为什么这些作业停止调度,我该如何运行这些停止的作业?
我正在通过 redis 连接分派多个名为 SimpleJob 的作业。
- PHP 版本 (7.4)
- Laravel 8
- Laravel 地平线 5.7
- Redis 服务器 ^5.7
SimpleJob::dispatch()->onConnection('redis');
config/horizon.php
'defaults' => [
'supervisor-1' => [
'connection' => 'redis','queue' => ['default'],'balance' => 'auto','maxProcesses' => 1,'memory' => 2048,'tries' => 1,'nice' => 0,],'environments' => [
'production' => [
'supervisor-1' => [
'maxProcesses' => 10,'balanceMaxShift' => 1,'balanceCooldown' => 3,'local' => [
'supervisor-1' => [
'maxProcesses' => 3,
config/queue.php
'redis' => [
'driver' => 'redis','connection' => 'default','queue' => env('REDIS_QUEUE','default'),'retry_after' => 90,'block_for' => null,
config/database.php
'redis' => [
'client' => env('REDIS_CLIENT','predis'),'options' => [
'cluster' => env('REDIS_CLUSTER','redis'),'prefix' => env('REDIS_PREFIX',Str::slug(env('APP_NAME','laravel'),'_').'_database_'),'default' => [
'url' => env('REDIS_URL'),'host' => env('REDIS_HOST','127.0.0.1'),'password' => env('REDIS_PASSWORD',null),'port' => env('REDIS_PORT','6379'),'database' => env('REDIS_DB','0'),'cache' => [
'url' => env('REDIS_URL'),'database' => env('REDIS_CACHE_DB','1'),
Horizon Dashboard Horizon Pending Jobs Tab
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。