"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيفية تشغيل وظائف Cron في Laravel

كيفية تشغيل وظائف Cron في Laravel

تم النشر بتاريخ 2024-11-05
تصفح:407

How To Run Cron Jobs in Laravel

في هذا البرنامج التعليمي سأوضح لك كيف يمكننا تشغيل وظائف cron في Laravel، ولكن فوق كل شيء سنبقي الأمور بسيطة وسهلة لطلابنا. سنذهب لاستكشاف كيفية إعداد هذه المهام الآلية وتشغيلها مباشرة على جهاز الكمبيوتر الخاص بك بينما نقوم ببناء تطبيق Laravel الخاص بنا.

أولاً، ما هي وظيفة cron بالضبط؟ فكر في الأمر كمساعد شخصي لموقعك على الويب - مساعد لا ينام أبدًا ويظهر دائمًا في الوقت المحدد. إنها مهمة تقوم بجدولة تشغيلها تلقائيًا في أوقات محددة. في Laravel، نستخدمها للتعامل مع المهام المتكررة التي تحافظ على تشغيل تطبيقنا بسلاسة.

الآن، ربما تتساءل، "كيف يمكنني تشغيل وظائف cron هذه على جهاز الكمبيوتر الخاص بي؟" سنتناول هذه الخطوة خطوة بخطوة، وفي النهاية، ستتمكن من جدولة المهام مثل المحترفين.

لنبدأ بقلب نظام الجدولة في Laravel - ملف app/Console/Kernel.php. هذا هو المكان الذي يحدث فيه السحر. عند فتح هذا الملف، سترى طريقة تسمى الجدول الزمني. هذا هو الملعب الخاص بك لإعداد المهام. إليك ما قد يبدو عليه الأمر:

protected function schedule(Schedule $schedule)
{
    $schedule->command('emails:send')->daily();
}

في هذا المثال، سنخبر Laravel، "مرحبًا، أريدك أن ترسل رسائل بريد إلكتروني كل يوم." الأمر بهذه البساطة! يمنحك Laravel الكثير من الخيارات لتحديد وقت تشغيل مهامك. يمكنك تشغيلها كل ساعة، أو مرة واحدة في الأسبوع، أو حتى كل خمس دقائق إذا أردت ذلك.

الآن، هنا تصبح الأمور صعبة بعض الشيء. يوجد على خادم ويب حقيقي نظام يقوم تلقائيًا بتشغيل هذه المهام المجدولة. ولكن على جهاز الكمبيوتر الخاص بك، نحتاج إلى بعض الإبداع.

يمنحنا Laravel أمرًا مفيدًا لتشغيل مهامنا المجدولة يدويًا. يمكنك كتابة هذا في المحطة الطرفية الخاصة بك:

php artisan schedule:run

يشبه هذا الأمر القول، "قم بتشغيل كافة المهام المستحقة الآن." ولكن لنكن صادقين، فأنت لا تريد الجلوس هناك لكتابة هذا الأمر مرارًا وتكرارًا، أليس كذلك؟

إذن، إليك خدعة رائعة. يمكننا إنشاء برنامج نصي بسيط يقوم بتشغيل هذا الأمر لنا كل دقيقة. إنه مثل وجود مساعد آلي صغير على جهاز الكمبيوتر الخاص بك. إليك الشكل الذي قد يبدو عليه هذا البرنامج النصي:

#!/bin/bash

while true
do
    php /path/to/your/project/artisan schedule:run >> /dev/null 2>&1
    sleep 60
done

لا تدع هذا يخيفك! إنه فقط يطلب من جهاز الكمبيوتر الخاص بك تشغيل أمر الجدولة:تشغيل كل 60 ثانية. يمكنك حفظ هذا كملف .sh وتشغيله في الخلفية أثناء العمل على مشروعك.

أثناء اختبار المهام المجدولة، من الجيد إضافة بعض التسجيل. بهذه الطريقة، يمكنك رؤية ما يحدث خلف الكواليس. إنه مثل ترك أثر من فتات الخبز لنفسك.

تذكر أن هذا الإعداد يعد أمرًا رائعًا عندما تقوم بإنشاء تطبيقك واختباره على جهاز الكمبيوتر الخاص بك. عندما تكون مستعدًا لإطلاق موقع الويب الخاص بك بشكل حقيقي، ستحتاج إلى إعداد الأمور بشكل مختلف قليلاً على خادم الويب الخاص بك.

قال تايلور أوتويل، منشئ Laravel، ذات مرة: "تعد جدولة المهام جانبًا حاسمًا في تطوير الويب الحديث، مما يسمح للمطورين بأتمتة المهام المتكررة وتحسين الكفاءة العامة لتطبيقاتهم." إنه على حق تماما! من خلال إتقان المهام المجدولة، فإنك تخطو خطوة كبيرة نحو إنشاء تطبيقات ويب أكثر قوة وكفاءة.

إذن هذا هو الحال! أنت الآن مجهز لإعداد وتشغيل وظائف cron على جهاز الكمبيوتر الخاص بك أثناء إنشاء تطبيق Laravel الخاص بك. قد يبدو الأمر معقدًا بعض الشيء في البداية، ولكن مع الممارسة، ستجد أنه أصبح أمرًا طبيعيًا. استمر في التجربة، وقبل أن تدرك ذلك، ستتمكن من جدولة المهام مثل المحترفين المتمرسين!

بيان الافراج تم نشر هذه المقالة على: https://dev.to/danish/how-to-run-cron-jobs-in-laravel-38i4?1 إذا كان هناك أي انتهاك، يرجى الاتصال بـ [email protected] لحذفه
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3