Azure web işini sürekli olarak bir mantık yürütmek için kullanıyorum. Bu işlev tekil bir işlevdir. Ancak, web uygulamasının yeniden başlatılmasından sonra bu işlevi çalıştırmayı denedikten sonra "Kilit bekliyorum" iletisini alıyorum. Aynı işlevin başka bir örneğinin kilidi tuttuğu anlamına mı geliyor? Bunu nasıl çözebilirim? Azure web işi singleton işlevi kilitli
fonksiyonu:namespace Ns
{
public class Functions
{
[Singleton]
[NoAutomaticTriggerAttribute]
public static async Task ProcessMethod()
{
while(true){
//process logic here
await Task.Delay(TimeSpan.FromSeconds(20));}
}
}
}
ana program:
namespace ns
{
class Program
{
static void Main()
{
var host = new JobHost();
host.RunAndBlock();
}
}
}
aldığım mesaj:
Aynı web işinin tüm örneklerini durdurmak mümkün mü? Ayrıca, web uygulamasını dağıtırken, eşlik eden web işleri otomatik olarak dağıtılıyor mu? Teşekkürler! – condor126
Ayrıca, görüntüleyebilse bile, doğru işlev için kilidi nasıl kazanacağım? Teşekkürler! – condor126
"Doğru" işleviyle ne demek istiyorsun? Kilit ve Singleton, fonksiyonun bir örneği çalışacak şekilde tasarlanmıştır, aynı işlevin diğer örnekleri kilitlenir. Ölçeklendirmeyi kısıtlamak istediğiniz işlevleri tanımlamak için kullanılır. Webjob örneklerinin miktarı, çalıştırdığınız Uygulama Hizmet Planının örneklerinin miktarına eşittir. –