Search code examples
phplaravelqueueironmq

Undesired parallel execution of Laravel IronMq Queues


I am trying to set an IronMq queue with Laravel, and I have it working already, but the point is that the behavior is not the desired one.

I expect IronMq to wait until a job is complete ($job->delete()) to push a new one, but I found out that it pushes messages before the previous one is finished.

The code is structured as follows:

Route::post('queue/send' ,function() 
{
    ...
    Queue::push(function($job) use ($data)
    {
        ...
        $job->delete();
    }
    return true;
}

Has anyone found out the way to prevent the parallel behavior and make it sequential?

Thank you very much!


Solution

  • Thank you for your answers, I decided to use Beanstalkd instead of IronMQ.

    It's much messier, but it provides with the desired functionality and I am not depending on no one.