Her gece yedek almak, her sabah rapor göndermek, her saat başı stok güncellemek... Bu işler için kimsenin bilgisayar başında beklemesine gerek yoktur. Zamanlanmış görevler, belirli zamanlarda kendiliğinden çalışan küçük programlardır.
Nerede çalışır?
- Windows Görev Zamanlayıcı (Task Scheduler): Windows sunucu veya bilgisayarlarda bir programı belirli saatlerde veya olaylarda çalıştırır.
- Linux cron: Linux sunucularda zamanlanmış komutlar için standart araç.
- Arka plan servisi: Sürekli çalışan ve kendi zamanlamasını yapan uygulama. Bkz. .NET BackgroundService.
- Bulut zamanlayıcıları: Bulut sağlayıcılarının sunduğu zamanlanmış fonksiyonlar.
Tipik görevler
- Veritabanı yedeği alıp sunucu dışına kopyalamak. Bkz. veritabanı yedekleme.
- Pazaryerlerine stok ve fiyat aktarmak. Bkz. stok senkronizasyonu.
- Günlük rapor oluşturup e-postalamak.
- Tedarikçiden gelen dosyaları SFTP'den alıp işlemek. Bkz. SFTP otomasyonu.
- Eski kayıtları arşivlemek veya saklama süresi dolan verileri temizlemek.
İyi bir zamanlanmış görevin özellikleri
Loglama
Görev ne zaman başladı, ne yaptı, kaç kayıt işledi, nasıl bitti? Bu bilgiler kayıt altına alınmalıdır. Bkz. .NET'te loglama.
Hata bildirimi
Görev başarısız olduğunda sorumlu kişiye e-posta veya mesaj gitmelidir. Sessizce başarısız olan bir yedekleme görevi, ancak yedeğe ihtiyaç duyulduğunda fark edilir.
Tekrar çalıştırılabilirlik
Görev yarıda kesilip yeniden çalıştırıldığında aynı kaydı iki kez işlememelidir.
Çakışma kontrolü
Önceki çalışma bitmeden yenisi başlamamalıdır.
Güvenli yapılandırma
Parolalar ve API anahtarları kodun içine yazılmamalı; güvenli yapılandırma kaynaklarında saklanmalıdır.
Ana sayfamızdaki örnek
Ana sayfadaki "StokSenkron" konsol penceresi, tipik bir zamanlanmış görevin çıktısını gösterir: veritabanına bağlanır, ürünleri okur, değişiklikleri aktarır, rapor oluşturur ve e-postayla gönderir. Konsola type Program.cs yazarak örnek kod yapısını görebilirsiniz.
Sık sorulan sorular
Bilgisayar kapalıysa görev çalışır mı?
Hayır. Kritik görevler, sürekli açık bir sunucuda veya bulut ortamında çalıştırılmalıdır.
Görev çalışmadıysa nasıl anlarım?
İyi bir tasarımda görev çalışmadığında da uyarı verilir; örneğin beklenen günlük rapor gelmezse bildirim gönderen ayrı bir kontrol.
Sonuç
Zamanlanmış görevler, işletmenin gece vardiyasında çalışan dijital personelidir. Güvenilir otomasyonlar kurmak için iletişime geçebilirsiniz.