Laravel Horizon Multiple App Conflict
Hi, I'm running a webserver that serves a production version of my Laravel app as well as a testing version. I have a separate supervisor process for each app to run Horizon, but the queue for both apps write to the same Redis database. It appears that the Horizon worker from the production app will process jobs from the testing app's queue, and vice versa. If I add a job to the queue in the testing app, I find it in the Failed Jobs on my production app's Horizon dashboard.
I am aware that the Horizon config file allows for a prefix to prevent conflicts like this, but I've already tried this. I've included the environment name in the prefix to ensure a unique prefix. The production app generates keys starting like app_name_production_horizon:, and the testing app uses app_name_testing_horizon:. I checked on my Redis server and sure enough, the prefix is being added as expected. However, the two apps are still processing each other's jobs.
I have a third Laravel app running on this web server that doesn't try to process the jobs from either of the apps mentioned. The only difference being that this app has a different name, so it generates keys like other_app_production_horizon:. It's almost like Horizon only checks the first few characters of the key.
Does anyone know why this is happening?
Please or to participate in this conversation.