Beanstalkd یک کارگزار صف سبک است که Jobها را دریافت و تا زمان پردازش توسط Worker نگهداری میکند. این ابزار برای انتقال کارهای پسزمینه، مانند ارسال اعلان یا پردازش فایل، از مسیر اصلی درخواست استفاده میشود.
در لاراول میتوان از Beanstalkd بهعنوان یکی از درایورهای Queue استفاده کرد. انتخاب آن به نیازهایی مانند ماندگاری پیام، حجم کار، مانیتورینگ و زیرساخت موجود بستگی دارد.
اگر ارسال پیامک در پاسخ HTTP انجام شود، کندی سرویس پیامک زمان پاسخ را افزایش میدهد. با Beanstalkd میتوان ارسال را به Job تبدیل کرد و Worker جداگانه آن را اجرا کند.
صف Beanstalkd و Jobهای ناموفق
پروتکل Beanstalkd از وضعیتهایی مثل Ready، Reserved، Delayed و Buried استفاده میکند. اگر Worker پیام را نتواند پردازش کند، سیاست Retry و نگهداری Job مشکلدار باید روشن باشد. برای پروژه حساس مانیتورینگ و Persistence را آزمایش کنید.