I can\'t understand what\'s the difference between Laravel queue:work
and Laravel queue:listen
I can see that:
Until Laravel 5.2
you had :listen
and :work
.
Work
would process the first job in the queue.
Listen
would process all jobs as they came through.
In Laravel 5.3
+ this is no longer the case. Listen
still exists, but it is deprecated and slated for removal in 5.5
. You should prefer :work
now.
Work
now process jobs one after the other, but have a plethora of options you can configure.
Edit
The above was true at the time of the posting, but since then things have been changed a bit.
queue:work
should be preferred when you want your queue's to run as a daemon
. This would be a long-lived process that would be beneficial where performance was an issue. This will use a cached version of the application and does not re-bootstrap the application every time a job is processed.
queue:listen
should be used when you don't care about performance or you don't want to have to restart the queue after making changes to the code.