Laravel Queue - Redis - Missing Queue/Jobs After Hour(s)
Hello,
I'm currently facing a problem on our live & staging server, our redis queue gets cleared/loses the jobs on the queue after sometime.
We are currently using 2 queues for our emails, and the purpose of the 2nd one is to handle the delay - and in our case is for an email to be sent after 48 hours, if it doesn't satisfy our flow.
I have a couple of questons:
Is Laravel Queue good for this task, or Laravel Scheduler is a lot more better for delaying emails/jobs?
I've been trying to figure out what is happening with our Redis instance, we are using Cloudways - Supervisord, and I cannot see any records of the Jobs that we lost, what would be the possible causes for it to disappear?
cloudways redis may not be set to flush data to disk and so restarts lose all its data
redis may be full (reaching its max allowed memory usage) and evicting some records to make room for newer ones (standard redis practice)
Might be easiest to use your database for queues instead. Otherwise my personal favorite queue driver is aws sqs (altho you can’t delay a job for more than 15m with it, so it wouldn’t work for that use case).