بازگشت به بلاگنکات حرفهای برنامهنویسان

آشنایی با Laravel Queue و پردازش صف در پسزمینه
۱۹ فروردین ۱۴۰۵
نویسنده:
علی محمدی

ارسال ایمیل، تولید گزارش، یا پردازش تصویر؛ هیچکدام نباید کاربر را معطل نگه دارند. اینجاست که صفها (Queues) در Laravel به کمک میآیند.
چرخهی کار
بهجای اجرای مستقیم یک کار سنگین، یک Job میسازید و آن را به صف میفرستید:
dispatch(new ProcessPodcast($podcast));
سپس یک Worker جداگانه با دستور php artisan queue:work این Jobها را یکییکی از صف برمیدارد و اجرا میکند.
- میتوانید از درایورهای مختلفی مثل Redis یا دیتابیس برای صف استفاده کنید.
- Jobهای ناموفق بهصورت خودکار قابل retry هستند.
- با Horizon میتوانید صفهای Redis را بهصورت بصری مانیتور کنید.