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

Установил Laravel Horizon, прочитал документы и настроил. Он отлично работал локально и на сайте разработки, поэтому я решил развернуть его в рабочей среде, однако это не сработало, как ожидалось. Если переменная среды HORIZON_PREFIX не задана, префикс Redis создается с использованием переменной среды APP_NAME.

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