Microsoft Azure (Eski adıyla Windows Azure) Websites servisinin altında bulunan Webjobs özelliği sayesinde artık bir çok işlemi daha hızlı ve daha pratik bir şekilde halledebileceğiz.
Nasıl?
Webjobs’ın işlevi, yazdığımız exelerin (Console veya Webjobs SDK ile .NET üzerinde yazılmış olması gerekiyor), php dosyalarının, js dosyaları (nodejs) python ve .bat/.cmd gibi scriptlerin çalıştırılması sayesinde istediğimiz her türlü işlemin istediğimiz sayıda veya istediğimiz zaman aralığında belirli süreler içerisinde çalıştırılması olarak tanımlanabilir.
Eskiden şahsım adına konuşacak olursam ben belirli zaman aralıklarında .exe çalıştırma ihtiyacı hissettiğimde bu ihtiyacımı Virtual Machines üzerinde açtığım herhangi bi makinede çalıştırdığım .NET projeleri ile gideriyordum. Bunun avantajı, girip kontrol edebilme gibi bir imkanımızın olmasıydı fakat dezavantajı koskoca sanal makineyi ufak bir işlem bile yapıyor olsanız 24 saat açık tutmak zorunda kalıyor olmamızdı.
Webjobs ile ne değişti?
Webjobs sayesinde artık yazdığımz scriptleri basit bir şekilde Azure Websites servisine deploy ederek çalıştırabileceğiz. Örneğin, günlük olarak web sitenizi nveritabanını yedekleyen bir exe veya php script mi yazdınız? Bu scripti artık Webjobs’a deploy ederek istediğiniz zaman aralıklarında çalışmasını sağlayabilirsiniz. Üstüne üstlük Webjobs’ın free ve standart olmak üzere 2 modu var, bu da ufak tefek işlemlerimiz için ücret ödememe gibi bir seçeneğin meydana gelmesini sağlıyor ki bu aslında düşünürsek oldukça güzel bir haber (en azından benim açımdan).
En önemli nokta ise şu: Webjobs üzerine aklınıza gelebilecek her şeyi (Twitter API’ı bağlayarak belirli aralıklarla twit attırmaktan tutun eğer destekliyorsa kombinizi uzaktan çalıştırıp durdurmaya; belirli bi sitedeki veriyi alıp başka bir yere taşımaya kadar) yapmanız mümkün, buradaki kilit nokta ise bu işleri yapacak uygulamayı veya scripti yazacak bilginizin olması 🙂
Şimdi, işin yazılı kısmını geçersek ve videoya gelirsek, bu videoda sizler için 2 farklı senaryo üzerinde durdum. Birincisi basit bir hello world uygulaması. Diğeri ise konsol uygulaması üzerinde mobil servislere bağlanarak veri kontrolü yapan ve bu verileri belirli zaman aralıklarında mobil servis aracılığıyla değiştirebilen bir webjobs görevinin çalıştırılması.
Video biraz uzun, fakat size söz veriyorum video’nun sonunda Webjobs ile ilgili aklınızda hiç soru işareti kalmayacak 🙂 Olası video sitesi engellemelerine karşın 3 farklı video sitesine ve bir de OneDrive (nam-ı diğer SkyDrive)’a yükledim. 🙂