【问题标题】:Want to trigger Different methods at different time interval in Azure Web Job想在 Azure Web Job 中以不同的时间间隔触发不同的方法
【发布时间】:2017-09-13 13:17:26
【问题描述】:

我通过网站托管了我的网络作业(带有选项添加现有项目作为Azure Webjob)。我想在不同的时间间隔触发不同的方法。

代码:

static void Main()
{
    var config = new JobHostConfiguration();
    config.UseTimers();   
    var host = new JobHost();
    host.RunAndBlock();
}

    public static void TimerTrig1([TimerTrigger("00:00:02")] TimerInfo timer)
    {
        Console.WriteLine("Triggered");
    }  

    public static void TimerTrig2([TimerTrigger("00:00:04")] TimerInfo timer)
    {
        Console.WriteLine("Triggered");
    }  

和 webjob-publish-settings.json 是:

        {
         "$schema": "http://schemastore.org/schemas/json/webjob-publish-settings.json",
         "webJobName": "KentDataImporterWebJob",
         "runMode": "Continuous"
        }

我需要一个解决方案,以便我可以在 2 秒或 4 秒触发这些功能。

因此,当我的 Azure Web 作业托管在不同的网站上时,我想在 Azure Web 作业的不同时间间隔触发不同的方法。

【问题讨论】:

  • 您尝试了哪些方法,哪些方法无效,我们在哪里可以帮助您?您只告诉我们您想要做什么并粘贴了一些代码,但我仍然不确定问题是什么......?
  • “不工作”是什么意思?有没有详细的异常信息?你能解释一下关于不工作的更多信息吗?
  • 不工作意味着什么都没有发生,没有任何方法触发器。

标签: azure azure-webjobs timer-trigger


【解决方案1】:

您的代码看起来不错。几个注意事项:

确保在 Program 类的 Main 方法中调用 config.UseTimers() 方法。如果您不这样做,您的 TimerTriggers 将不会触发。此外,请确保您的 WebJob 是连续的。

public static void Main()
{
    var config = new JobHostConfiguration();
    config.UseTimers();
    var host = new JobHost(config);
    host.RunAndBlock();
}

【讨论】:

  • 我已经使用了这个选项。 var host = new JobHost(config);它不工作。我通过网站托管了我的网络作业(带有选项已将现有项目添加为 Azure Web 作业)。我的 Web Job 不是主应用程序,它托管在另一个网站上,所以我认为。这可能是个问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-27
相关资源
最近更新 更多