Laravel Cron Job Kurulumu

0 Yanıt 0 Görüntülenme
·
Katılımcılar
Konuyu Açan #1
Laravel projelerinde zamanlanmış görevleri (cron job) otomatik hale getirmek, uygulamanızın belirli işlemleri zamanında ve düzenli şekilde yapmasını sağlar. Bu detaylı rehberde, Laravel'de cron job kurulumunu ve yapılandırmasını adım adım ele alacağız.

İlk olarak, Laravel'in kendi zamanlanmış görev sistemi olan Task Scheduling'den bahsetmek gerek. Laravel, app/Console/Kernel.php dosyasında tanımlanan görevleri belirli aralıklarla çalıştırmak için entegre bir yapı sunar. Bu yapı, özellikle büyük ölçekli uygulamalarda görevlerin yönetimini kolaylaştırır.

İkinci aşama, Linux sunucu üzerinde cron tab'ını düzenlemektir. Örneğin, Laravel uygulamanızın artisan schedule:run komutunu her dakika çalıştıracak şekilde ayarlamak, Laravel içindeki zamanlanmış görevlerin tetiklenmesini sağlar. Bunun için terminalde şu komutla cron tab'ına erişilir:

KOD
1crontab -e


ve aşağıdaki satırı eklenir:

KOD
1* * * * * cd /path/to/your/laravel/project && php artisan schedule:run >> /dev/null 2>&1


Burada, /path/to/your/laravel/project kısmını kendi proje dizininizle değiştirmeniz gerekir.

Üçüncü aşamada, Laravel içinde görevleri tanımlamak. Örneğin, app/Console/Kernel.php dosyasında, schedule() fonksiyonuna şu satır eklenir:

KOD
12345
protected function schedule(Schedule $schedule)
{
    $schedule->command('your:command')->daily(); // günlük çalıştırma
}


Burada, kendi komutlarınızı veya artisan komutlarını planlayabilirsiniz. Ayrıca, command sınıfını oluşturarak, görevlerinizi daha modüler hale getirebilirsiniz.

Son olarak, uygun zamanlama sıklığını belirlemek, görevlerin doğru zamanlarda tetiklenmesini sağlar. Laravel'in schedule fonksiyonunda birçok zamanlama metodu bulunur: daily(), hourly(), everyMinute(), weekly() gibi.

Laravel’de cron job kurulumu bu şekilde özetlenebilir. Bu sistemi düzgün yapılandırmak, uygulamanızın zamanlanmış işlemlerini güvenilir ve sürdürülebilir hale getirir.

Yanıt vermek için giriş yapmış olmalısınız.

Bu konuyu görüntüleyen kullanıcılar (Toplam: 2, Üyeler: 2, Misafirler: 0)
Toplam: 2 (üyeler: 2, misafirler: 0)
0 alıntı seçildi