170 похожих чатов

Всем привет! Есть такой пакет Horizon. У него можно указывать

несколько очередей. У меня эти очереди динамические и я их загружаю в HorizonServiceProvider. Но для добавления новой очереди в Horizon мне нужно перезапускать с ним контейнер. Это не удобно. Как мне добавить новую очередь в Horizon не перезапуская контейнер или чтобы он перезапускался автоматически? Может у кого то был похожий кейс?

14 ответов

27 просмотров

Доброе утро! artisan horizon:terminate разве очень неудобно?

Aleksey-Svechkar Автор вопроса
Konstantin SeventhSon
Доброе утро! artisan horizon:terminate разве очень...

Если бэкенд и горизонт находятся в разных контейнерах, эта команда не работает.

Aleksey Svechkar
Если бэкенд и горизонт находятся в разных контейне...

выгрузку на backend вы же как-то делает? потому же принципу и зайдите в docker контейнер с horizon и вызовете там соответствующую команду

Egor Gruzdev
выгрузку на backend вы же как-то делает? потому же...

только мен не понятно, зачем так усложнять жизнь, у вас, наверное, и schedule в отдельном контейнере

Aleksey-Svechkar Автор вопроса
Egor Gruzdev
выгрузку на backend вы же как-то делает? потому же...

Ну в ручном режиме я конечно могу перезапустить контейнер. Тут вопрос в том, что у меня название очередей составляется из записей в таблице. И если появляется новая запись, должна появиться новая очередь. Для этого надо перезапускать процесс горизонта. Из контейнера бэкенд это не сделаешь. Я уже думал про какой то внешний вотчер, который не в докере и прослушивает таблицу в БД, если количество записей изменилось, то он перезапускает контейнер с горизонтом. Но мне кажется, что это какой то костыль.

Aleksey Svechkar
Ну в ручном режиме я конечно могу перезапустить ко...

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

Aleksey Svechkar
Ну в ручном режиме я конечно могу перезапустить ко...

получается одни и те же события могут лететь в разные очереди? архитектура немного не ясна

Aleksey-Svechkar Автор вопроса
Egor Gruzdev
Я не знаю что у тебя за задача, но составление имё...

есть список компаний, у каждой компании несколько процессов. эти процессы должны выполняться параллельно. была одна очередь, но процессы в ней выполнялись последовательно. поэтому было решено разделить процессы по компаниям. соответственно при добавлении новой компании должны создаваться для нее очереди.

Aleksey-Svechkar Автор вопроса
Konstantin SeventhSon
получается одни и те же события могут лететь в раз...

есть ряд процессов, но он разделяется еще и по компаниям.

Aleksey Svechkar
есть список компаний, у каждой компании несколько ...

я бы количество воркеров (обработчиков) на очередь добавил. А не плодил зоопарк.

v w
я бы количество воркеров (обработчиков) на очередь...

они тогда все равно будут месить одну очередь, которую может одна компания забить и вторая будет ожидать, пока с первой разберутся

Aleksey-Svechkar Автор вопроса
v w
я бы количество воркеров (обработчиков) на очередь...

не вариант, мы не можем угадать, сколько нужно воркеров. количество компаний динамичное.

Aleksey Svechkar
есть список компаний, у каждой компании несколько ...

значит что не так настроили в очередях, что у вас все шло последовательно, точнее был запущен один woker на всю очередь

Aleksey Svechkar
не вариант, мы не можем угадать, сколько нужно вор...

это понятно что вы не можете угадать, но и мощности сервера не резиновые, в какой-то момент у тебя просто тупо не хватит ресурсов держать много очередей, не то что обрабатывать в них job-ы

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
Карта сайта