Worker فرایندی است که Jobها یا پیام‌های صف را دریافت و اجرا می‌کند، مانند ارسال ایمیل پس از درخواست کاربر.

تعداد ورکرها، زمان اجرای Job و نرخ شکست باید پایش شوند. افزایش ورکر همیشه سرعت را بیشتر نمی‌کند و ممکن است دیتابیس گلوگاه شود.

Worker ممکن است در میانه پردازش ایمیل متوقف شود و همان Job دوباره تحویل داده شود. Job باید با این سناریو سازگار باشد.

نمونه کوتاه

php artisan queue:work --tries=3

درک تفاوت این موضوع با صف پیام و مسیج بروکر به انتخاب راهکار مناسب‌تر کمک می‌کند.

نمونه اجرای ورکر صف لاراول

php artisan queue:work redis --tries=3 --timeout=60

Worker یک پردازش طولانی‌عمر است و باید با Supervisor، Systemd یا ابزار مشابه مانیتور و ری‌استارت شود. Timeout، تعداد تلاش و Jobهای آیدمپوتنت جلوی خطاهای تکرار را می‌گیرند.