Azure webjob; Scheduled execution as well triggers by queue

后端 未结 1 1504
爱一瞬间的悲伤
爱一瞬间的悲伤 2021-01-18 12:19

I try to figure out if it\'s possible to make one Azure webjob and behave it scheduled for say like once per 1 minute and also let it be able to be triggered by a queue. I m

相关标签:
1条回答
  • 2021-01-18 12:51

    I wouldn't use Azure Scheduler/Scheduled Jobs here, since you're already using the SDK. You can use the new TimerTrigger.

    What I'd probably do is have two functions. The first function is the function using QueueTrigger and the other is using the new TimerTrigger WebJobs released in v1.1.0. You can see a sample where I do something similar here: https://github.com/christopheranderson/feedbackengine#how-does-it-work

    There I have a timer which polls an RSS feed and drops Queue messages, but I can also just drop the Queue messages from another application or, as I did in my scenario, use a WebHook.

    Timer Trigger Docs: https://github.com/Azure/azure-webjobs-sdk-extensions#timertrigger

    Sample:

    // Triggers every minute (every time the clock looks like 00:xx:xx)
    public static void CronJob([TimerTrigger("0 * * * * *")] TimerInfo timer, [Queue("Foo")] out string message)
    {
        Console.WriteLine("Cron job fired!");
        message = "Hello world!";
    }
    
    public static void QueueJob([QueueTrigger("Foo")] string message)
    {
        Console.WriteLine(message);
    }
    
    0 讨论(0)
提交回复
热议问题