Cron Job Nedir?

İngilizce: Cron Job

Cron job, Linux/Unix sistemlerde belirli saat veya aralıkta çalışan yedekleme, rapor veya senkronizasyon gibi zamanlanmış görevdir.

Cron Job Nedir?

Cron job, belirli zamanlarda otomatik çalışan komut veya script’tir. Günlük veritabanı yedeği almak, her gece rapor üretmek, saat başı stok senkronizasyonu yapmak veya süresi dolan oturumları temizlemek için kullanılabilir.

Cron İfadesi Nasıl Okunur?

Klasik cron formatında beş alan bulunur: dakika, saat, ayın günü, ay ve haftanın günü. Örneğin 0 3 * * * her gün 03:00’te çalışır. */15 * * * * ise her 15 dakikada bir çalıştırma anlamına gelir.

Kullanımda Dikkat Edilecekler

  • Görev idempotent olmalı; iki kez çalışırsa veri bozmamalıdır.
  • Log, hata bildirimi ve başarısızlık alarmı tanımlanmalıdır.
  • Uzun süren işler aynı görevin üst üste binmesine neden olmamalıdır.
  • Saat dilimi ve yaz saati değişiklikleri özellikle finansal raporlarda hesaba katılmalıdır.
  • Dağıtık sistemlerde tek sefer çalışması gereken işler için lock mekanizması gerekir.

Event-Driven Yaklaşımla Farkı

Cron zamana göre çalışır; event-driven mimaride görev bir olay gerçekleşince tetiklenir. Örneğin “her gece tüm siparişleri kontrol et” cron mantığıdır; “ödeme tamamlanınca fatura oluştur” olay tabanlıdır. Birçok sistemde iki yaklaşım birlikte kullanılır.

İş Dünyasında Kullanımı

Cron job, otomasyon projelerinde düzenli bakım ve veri akışları için pratik bir araçtır. Kritik işlerde yalnızca crontab satırı yeterli değildir; izleme, retry, yetki sınırı ve manuel yeniden çalıştırma prosedürü de tasarlanmalıdır.