在 Laravel Horizon 中仅执行一次作业的设置是什么?
What are the settings to execute job only once in Laravel Horizon?
我有点困惑如何只运行作业一次,因为当我将参数"tries"设置为1并且作业失败时,它会再执行一次。如果我将 tries 参数设置为 3,作业 运行s 4 次。最后,如果我设置为 0,则作业 运行 无限期。在 config/horizon.php 中我的设置下方:
'production' =
'default' => [
'connection' => 'redis',
'queue' => [
'default',
'notifications',
'dom'
],
'balance' => 'auto',
'maxProcesses' => env('MAX_PROCESSES', 45),
'timeout' => 60,
'tries' => 1,
],
],
下面是我在 config/queue 中的设置。php
'redis' => [
'driver' => 'redis',
'connection' => 'default',
'queue' => 'default',
'retry_after' => 90,
],
还有其他问题,调度 "has been attempted to many times or run too along" 的设置是什么?
只需为作业设置一个属性 $tries = 1
,并在发现可能的错误时调用 $this->fail()
;
我有点困惑如何只运行作业一次,因为当我将参数"tries"设置为1并且作业失败时,它会再执行一次。如果我将 tries 参数设置为 3,作业 运行s 4 次。最后,如果我设置为 0,则作业 运行 无限期。在 config/horizon.php 中我的设置下方:
'production' =
'default' => [
'connection' => 'redis',
'queue' => [
'default',
'notifications',
'dom'
],
'balance' => 'auto',
'maxProcesses' => env('MAX_PROCESSES', 45),
'timeout' => 60,
'tries' => 1,
],
],
下面是我在 config/queue 中的设置。php
'redis' => [
'driver' => 'redis',
'connection' => 'default',
'queue' => 'default',
'retry_after' => 90,
],
还有其他问题,调度 "has been attempted to many times or run too along" 的设置是什么?
只需为作业设置一个属性 $tries = 1
,并在发现可能的错误时调用 $this->fail()
;