راکت

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

5 پاسخ

سلام دوستان خسته نباشید .
من یک کلاس Notification در لاراول ایجاد کردم ، و وقتی یک پست جدید ایجاد میکنم ازین کلاس استفاده میکنم و به کاربران یک ایمیل حاوی پست جدید رو ارسال میکنم .
مشکلی که وجود داره اینه که ، وقتی ازین کلاس استفاده میکنم ، یک تاخیری در ارسال پست ایجاد میشه حدود ۵ الی ۱۰ ثانیه ، میخوام این تاخیر رو از بین ببرم .
از کد زیر استفاده کردم که ۵ دقیقه بعد برای کاربران ایمیل رو ارسال کنه ، ولی اون چیزی که میخواستم نشد :

'''
$when = now()->addMinutes(۳);
Notification::send($result,(new QuestionEmail($question))->delay($when)) '''

ثبت پرسش جدید

پاسخ‌ها

5
علی بیات
علی بیات
@ali.bayat

تخصص: توسعه دهنده ارشد وب

آیا کلاس Notification رو از طریق یه جاب اجرا می‌کنید؟ جاب ها میتونند شامل Queues باشند و این داستان خودش یه تاخیر منطقی به جهت فشار نیاوردن روی سرور، اعمال میکنه.

Mojtaba Michael
Mojtaba Michael
@mojimich2015

تخصص: برنامه نویس FullStack لاراول و اندروید و فلاتر

@ali.bayat
از این دستور در ابتدای کلاس Notification خودم استفاده میکنم ، طوری که توی مستندات خوندم ، میگفت این کافیه :
use Queueable

شاید پاسخ شما همین‌جا باشد

علی بیات
علی بیات
@ali.bayat

تخصص: توسعه دهنده ارشد وب

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

Mojtaba Michael
Mojtaba Michael
@mojimich2015

تخصص: برنامه نویس FullStack لاراول و اندروید و فلاتر

@ali.bayat
بسیار ممنون

علی بیات
علی بیات
@ali.bayat

تخصص: توسعه دهنده ارشد وب

خواهش می‌کنم، موفق باشید

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام