Laravel queues are powerfull and often adds quite a lot of flexibility to the system. While this is great – it can be very tricky to manage their priorities and ensure that they only run in specific order or if it’s really important – you run it as a priority over everything else.
Processing CSVs, resizing images, converting video...these are all intensive, time-consuming tasks that may take a computer seconds, minutes or hours to complete.
When the client requests something in a typical web app, the web server is able to handle the request in a few seconds or less. A response is then sent to the client to inform it of the outcome.
At some point, your application will need to listen for cues and emit an event for them. Those cues could be birthday or appointment reminders or expiry reminders for users of the trial version of your saas app.