laravel 基于服务器的不同层次的服务器

ygya80vv  于 2023-11-20  发布在  其他
关注(0)|答案(1)|浏览(124)

config/horizon.php中,你可以定义每个Horizon队列需要多少个进程。如果我有一个不用于处理请求的第二台服务器,而只是用于处理某些作业和任务,我如何设置它,以便只有这台第二台服务器查看一个队列,而另一台主服务器不查看该队列?
例如,我有一个名为Webhooks的队列,我希望第二个服务器只处理Webhooks,而主服务器根本不处理Webhooks队列中的任何作业。
我只是在每个服务器上有一个不同的horizon.php文件,一个分配给Webhooks的进程为0,另一个分配给Webhooks的进程为20?

kqqjbcuj

kqqjbcuj1#

是的,你可以在每个服务器上有不同的配置文件,正如你所描述的,但在某些情况下,这可能是痛苦的维护。作为替代解决方案,你可以有一个单一的,共享的配置,但然后委托某些参数,不同的环境变量,所以设置在每个服务器的. env文件。

  1. 'environments' => [
  2. 'production' => [
  3. 'Webhooks' => [
  4. 'queue' => ['webhooks'],
  5. 'balance' => 'simple',
  6. 'processes' => env('WEBHOOKS_PROCESS_COUNT', 0),
  7. 'tries' => 3,
  8. ],
  9. ...
  10. ],
  11. ],

字符串
然后,在主服务器的.env文件中,您可以设置:

  1. WEBHOOKS_PROCESS_COUNT=0


在第二个服务器上:

  1. WEBHOOKS_PROCESS_COUNT=20

展开查看全部

相关问题