• bilinmeyen bir sebepten silahta ateşlemenin gecikmesi, araya saniyeler girmesi, hedefin belki yırtması, belki kıçını kurtarması.
  • hangfire.io adresinde yer alan asp.net uygulamaları için açık kaynak ve oldukça kullanışlı bir fire and forget kütüphanesi.
  • misal web sayfası aracılığı ile bir alıcı listesine e-posta atacaksınız, gönder butonuna bastınızda en baştan en sona tüm alıcılara kızılderili usulü tek tek mesaj atıp iki saat sayfayı beklemek yerine işi hangfire'a devreder sayfayı kapatıp gidersiniz. vakti zamanı geldiğinde hangfire arkada mailleri gönderen kodu çalıştırır.
  • sadece asp.net değil, winforms uygulamalarda da çalıştırabileceğiniz bir kütüphane.

    sizi çok büyük dertlerden kurtarır.

    redis ile de çalışabilen versiyonu ve loadbalance yapabilen yapısı ile yük altındaki sistemler için de elverişlidir.

    sorusu olan suserlara bir mesaj uzaklığındayım.
  • kendisini keşfetmeden önce yaşadığım hantallık ve daha sonra kendisini keşfederek arka planda çalışan işleri daha çevik ve kontrol edilebilir bir yapıda yürüttüm. özellikle bildirim, loglama ya da yoğun yük altındaki sistemlerde kuyruk işlemlerinde inanılmaz kolaylıl sağlıyor.
  • .net'in farklı versiyonlarına uyumlu open source ve ücretsiz bir kütüphane. arka planda çalışacak işler için ideal.
    arka plan işini açarsak, normalde bir apiye istek geldiğinde ilgili kod bloğu çalışır. ancak sizin sisteminizde hergün ya da süresi belli zamanlarda çalışması gereken kodlar olabilir. sürekli dışardan kendiniz çağrı yapmak yerine background job kurarsınız. mesela her salı müşterilerinize mail atmak istiyorsunuzdur ya da ankara'nın günlük hava durumunu ilgili bir api'den çekip kendi veri tabanınızda saklamak istiyorsunuzdur. bu gibi durumlar için idealdir.

    sisteminize hangfire kurduktan sonra, hangfire o sistemdeki veri tabanında otomatik olarak kendi tablolarını oluşturur. ve joblar çalıştıkça ilgili tabloları doldurur. kendi dashboardu var. oradan hangi işler ateşlenmiş hangileri başarısız izleyebilirsiniz. tabii tamamlanamamış işleri loglayadabilirsiniz illa dashboarda o konuda ihtiyaç yok. ama görselleştirme için iyi ayrıca henüz süresi gelmemesine rağmen işi anında dashboarddan çalıştıradabilirsiniz.
    farklı job çeşitleri var. bir defa tekrarlanan, ileri tarihli ve tekrarlanan *. en çok 3.sü kullanılır. mesela döviz bilgisini kendi veritabanınızda da saklamak isteyebilirsiniz. hergün merkez bankasının apisine istek atıp döviz bilgilerini çekip belirlediğiniz bir veri tabanında tutabilirsiniz.

    bazı durumlarda optimizasyona ihtiyacı olabiliyor. örneğin veri tabanına fazla client bağlandı hatası alıp erişemeyebilirsiniz bunun için hangfire'ın worker sayısını fixleyebilirsiniz.
  • dashboard'unda bir gorevi gecici olarak durdurmak icin bir buton olmamasi cok acayip.
    illa silip sonra bastan schedule etmek gerekiyor.
hesabın var mı? giriş yap