Когда использовать несколько супервизоров в Laravel Horizon - PullRequest
1 голос
/ 30 января 2020

В моем config/horizon теперь у меня есть:

'production' => [
            'supervisor-1' => [
                'connection' => 'redis',
                'queue' => ['arbitrage'],
                'balance' => 'auto',
                'processes' => 2,
                'tries' => 1,
            ],
            'supervisor-2' => [
                'connection' => 'redis',
                'queue' => ['trade'],
                'balance' => 'auto',
                'processes' => 4,
                'tries' => 1,
            ],
            'supervisor-3' => [
                'connection' => 'redis',
                'queue' => ['balance', 'trade_meta'],
                'balance' => 'auto',
                'processes' => 5,
                'tries' => 1,
            ],
            'supervisor-4' => [
                'connection' => 'redis',
                'queue' => ['notifications'],
                'balance' => 'auto',
                'processes' => 2,
                'tries' => 1,
            ],
        ],

Я сделал это, потому что я хочу убедиться, что каждая из этих очередей получает своих назначенных рабочих, что разные очереди работают параллельно и что они не влияют друг на друга, даже если, например, очередь notifications имеет десятки заданий, а очередь trade пуста.

Мой вопрос заключается в том, имеет ли это смысл, когда именно я должен использовать несколько супервизоров? Или: чем мой вышеупомянутый конфиг отличается от выполнения:

    'supervisor-1' => [
        'connection' => 'redis',
        'queue' => ['arbitrage', 'trade', 'balance', 'trade_meta', 'notifications'],
        'balance' => 'auto',
        'processes' => 10,
        'tries' => 1,
    ],

Будет ли это иметь значение, если в этих очередях одновременно будет более 10 заданий, учитывая, что я указал 10 работников?

В очереди может одновременно находиться от 10 до 30 заданий, и это может увеличиться в будущем. Вот почему я строю свою конфигурацию таким образом, но я не уверен, что именно означает определение нескольких супервизоров.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...