*/5 * * * * İfadesi
*/5 * * * * cron ifadesi bir işi her 5 dakikada, her saat, her gün çalıştıracak şekilde zamanlar. Beş alan şunlara karşılık gelir: dakika, saat, ayın günü, ay, haftanın günü. Bir alandaki * ‘her geçerli değer’ anlamına gelir. Dakika alanındaki */5, her 5. değeri seçmek için adım operatörünü kullanır.
Adım Operatörü
Cron’da / karakterine adım operatörü denir. */N sözdizimi ‘tüm aralık boyunca her N birim’ anlamına gelir. Dakika alanı için:
- Tam aralık: 0-59
- Adım: 5
- Sonuç: 0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55
Kısıtlı bir aralıkta da adım kullanabilirsiniz. 10-30/5, 10,15,20,25,30 değerine genişler.
5 Dakikalık Program Ne Zaman Mantıklıdır
Sağlık kontrolleri ve çalışma süresi izleme
Her 5 dakikada bir uç noktayı kontrol etmek, hataları 5 dakikalık bir pencere içinde yakalar.
Önbellek ısıtma ve yenileme
Uygulamanız 10-30 dakika sonra süresi dolan verileri önbelleğe alıyorsa, önceden getiren ve önbelleği dolduran 5 dakikalık bir cron, önbellek isabetsizliklerini önler.
Harici API’leri yoklama
Web kancası mevcut olmadığında ve harici bir kaynaktan veri çekmeniz gerektiğinde, 5 dakika genellikle hız sınırları içinde kalan en kısa aralıktır.
Alternatifler ve Karşılaştırma
| İfade | Saatte çalışma | Tipik kullanım |
|---|---|---|
*/1 * * * * | 60 | Gerçek zamanlı yoklama |
*/5 * * * * | 12 | Sağlık kontrolleri, önbellek yenileme |
*/10 * * * * | 6 | Orta düzey yoklama |
*/15 * * * * | 4 | Çeyrek saat raporlama |
*/30 * * * * | 2 | Yarım saat özetleri |
0 * * * * | 1 | Saatlik işler |
Cron vs systemd Timer
Modern Linux sistemlerinde systemd ile, cron yerine .timer biriminde OnCalendar kullanabilirsiniz:
[Timer]
OnCalendar=*:0/5
Persistent=true
OnCalendar=*:0/5 her saatin her 5. dakikasında çalışır. Persistent=true seçeneği, zamanlandığında sistem kapalıysa işi yeniden çalıştırır.