Windows Task Scheduler & Windows Power Shell ile Kestrel Rest Api EndPoint tetikleme.

Haktan AKDAĞ
2 min readSep 22, 2023

Merhaba arkadaşlar;

Uygulamalarınızı windows’un zamanlayıcısının ellerine bırakmak isterseniz bu yazıyı okumanızı tavsiye ediyorum. Öncelikle bir uygulama geliştirdiniz ve uygulamanın belli zamanlarda çalışmasını, tetiklenmesini istiyorsunuz. Bu durumda 3. parti uygulamalar’a bağımlılığınızı azaltmak(örneğin hangfire) için windows’un kendi Task Scheduler’ini kullanabilirsiniz.

Piyasadaki bir çok zamanlayıcıya göre ekstra özelliklere sahip olan bu windows nimetini doğru kullandığınızda işinizin büyük bir bölümünü göreceğini düşünüyorum.

Sadece düşünmekle kalmayıp adını vermek istemediğim bir projede uyguladım.

Şimdi ben bu projede .net core kestrel kullandım, kestrel ile iis arasındaki farkları incelemek isterseniz aşağıdaki linklerden araştırma yapabilirsiniz.

Öncelikle powershell ile bilgisayara istediğiniz herşeyi yaptırabileceğinizi biliyor olmalısınız.

Zamanlayıcıyı kurduktan sonra; tetikleyiciyi ayarlamak gerekiyor.

Alınacak olan aksiyonu belirlemek, yani swagger ile açılan rest api url’ini tetikleyecek aksiyonu yaratmak gerekiyor.

Uygulama sadece localde çalışacağı için bir https yönlendirmesi yapmadım, zaten dışarıdan içeriye de bir port yönlendirmesine gerek yok. Tavsiyem local^’de çalışacak da olsa portları standart vermekten kaçınmalısınız.

Bu uygulamada bir kondisyon veya ekstra bir ayarlamaya girmeden zamanlayıcımı belirlediğim periyotta kuruyorum.

İşin güzel tarafı, ayrıca bir zamanlayıcı kodlaması yapmadan bu işi direkt windowsun sorumluluğuna attığınızda sistemin çalışmaması gibi durumlarda teknik ekibin bakabileceği ve yönetebileceği bir sistem olduğundan sizin ilerleyen zamanlarda başınız daha az ağrıyacaktır.

--

--