0

我有具有两个功能的 ac# webjob。一个是blobtrigger,另一个是TimerTrigger("0 */2 * * * *")。

我将网络作业(通过 Visual Studio)发布到每个应用服务(都在同一个资源组中,使用同一个 blobstorage。)

我预计这些中的每一个都会每 2 分钟“触发”一次。相反,发生的事情只是我的一个 webjobs 将运行一天,其余的 appservices 一整天都没有运行 webjobs。

在 azure-webjobs-host 计时器日志中只有这一行:

{"Last":"2020-01-31T20:00:00.0030602+00:00","Next":"2020-01-31T20:02:00+00:00","LastUpdated":"2020-01-31T20:00:00.0030602+00:00"}

关于为什么 webjob 没有在其他 appservices 中运行的任何想法?

4

1 回答 1

0

2个问题:

  1. 拥有多个 blob 触发器意味着任何应用程序服务都可以为其提供服务。每个容器我真的只需要一个 blobtrigger。

  2. 触发的函数没有运行和阻塞,所以blob.ExistsAsync需要很长时间才能返回。所以我做了Job async Task,使用JobHost.CallAsync然后Wait()

于 2020-02-05T18:52:15.563 回答