I have a series of large, long running import jobs that are implemented as laravel jobs. In development and test everything works great since I can independently set timeouts and memory constraints for each worker/queue combination.
In production we are using apache2/mod_php similar to our staging environment where everything works fine. In production jobs get processed whether or not the supervisor monitored artisan command is running and the apache process is clearly doing the work. I do not want to set the ini limits higher for the default apache/mod_php process. That destroys the whole point of using background workers.
My question is: why would the apache php process pick up jobs? How can I stop it. The configs in staging and prod are essentially identical.
And the answer was that the prod .env file was set to QUEUE_DRIVER=sync
The other environments were not set and so used the default.
Sign in to participate in this thread!
The Laravel portal for problem solving, knowledge sharing and community building.
The community