نحوه اجرای دستور work

پرسیده شده
فعالیت 1762 روز پیش
دیده شده 1030 بار
0

با سلام بر استاد عزیز و تشکر از آموزش های خوبتون :)

سوالی داشتم. فرض کنید یک job ارسال ایمیل داریم که به کاربرا بعد نهایی شدن رزروشون ایمیل میزنه. تعداد رزرو ها هم در لحظه بالا هستش

حالا سه تا سوال داشتم:

1) دستور php artisan queue:work --tries=3 رو باید توی cron بزاریم؟ در واقع این دستور کجا باید در حال اجرا باشه دائما؟

2) اگر این دستور توی cron بره مشکلی ایجاد نمیشه؟ من نگرانیم سر این هستش cron زمان زیادی صرف کنه (مثلا برای ارسال ایمیل) و باعث بشه cron بعدی هم اجرا شه و خدایی نکرده اگر ردیفی هنوز به دلیل ارسال نشدن توی جدول بود دوبار ارسال بشه (من صف رو تا پارسال خودم با دیتابیس و cron هندل میکردم و بد بود ولی پارسال برای یه پروژه لاراولی یبار صف رو از همین روش راه انداختم و چون تجربه اولم بود نمی دونم سر چی سرور down شد و آخر نفهمیدم برای چی بود باعث شد یکم بترسم ازش)

3) میشه استاد این دستور رو یه توضیحی دربارش بدید؟ php artisan make:mail TopicCreated --markdown=topic-created (این TopicCreated چی هست؟)

ممنونم

فایل پیوست

نیما
نیما

30 خرداد 98

1
حذف شده

سلام .... 

برای اجرای دستور queue:work یک راه همون بحث cron هست که خب خیلی جالب نیست ... ولی راه بهتری که وجود داره نصب نرم افزار supervisor روی سرور هستش ... شما این نرم افزار رو نصب میکنید و بهش دستوری که میخواید همیشه بالا باشه رو میدید بهش ... خود لاراول هم پیشنهادش دقیقا نصب همین پکیج هستش که از اینجا میتونید نحوه نصب و راه اندازی اون رو ببینید . 

داخل لاراول برای اینکه ما بتونیم ایمیل بفرستیم نیاز به ۲ تا فایل داریم ... یکی فایل front و دیگری هم فایلی که بتونیم داخلش بنویسیم چه زمانی یا به چه صورت ایمیل ارسال بشه ... اصطلاحا بهش میگن فایل های Mailbale ... اون TopicCreated دقیقا همون فایل Mailable هستش ... این موضوع رو در داخل پروژه اول به صورت کامل توضیح دادم ... میتونید از لینک زیر اون رو مشاهده کنید ....

ارسال ایمیل در لاراول

موفق باشید . 

فایل پیوست

مهرداد سامی

توسط

مهرداد سامی

31 خرداد 98

0
حذف شده

ممنونم استاد :)

فایل پیوست

نیما

توسط

نیما

1 تیر 98