azure - 从单个 Web 应用程序同时运行同一 Azure WebJob 的多个实例

标签 azure azure-webjobs azure-webjobssdk

我创建了一个简单的 azure 网络作业,它从传入的网站中获取一些数据,解析它并将其添加到数据库中。

这只是一个接受参数的简单控制台应用程序(.exe 文件)。并将其上传到 Azure 上的 Web 应用程序。

但是,我的印象是这个网络作业会根据需要多次启动和完成。因此,如果我依次向 webjob 发出 3 个命令,最终会得到 3 个 webjob 实例同时运行。

但是,这不起作用。我只能让它运行一次。其他两个命令失败。是否可以在单个 Web 应用程序中拥有单个 Web 作业并让它同时运行,同时处理不同内容的同一个 Web 作业也在运行?

最佳答案

根据我的经验,触发的 WebJob 无法同时运行。

我的建议是,不要手动触发作业,而是将其设为监听队列的连续 WebJob。然后发送一条队列消息,其中包含您想要的每次运行的参数。连续队列监听作业可以并发运行。

您需要稍微修改作业。它必须运行作业主机,而不是在启动时触发逻辑,并且您必须将逻辑移至队列触发的函数。

关于azure - 从单个 Web 应用程序同时运行同一 Azure WebJob 的多个实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44601938/

相关文章:

security - 保护 Azure 基础设施

entity-framework - Azure函数: Can compile but cannot run with custom datalayer library

azure - “IWebJobsBuilder”不包含 'AddAzureStorageCoreServices' 'AddTimers' 的定义

Azure 共享网站 - 在 HTML 中启用 PHP

asp.net-mvc - 如何使用 MVC Azure AD 身份验证从 AD 获取角色?

azure - 如何从 Webjob 写入 Azure 网站?

Azure WebJobs TimerTrigger 未触发

jenkins - msbuild 与命令行与 Jenkins 的行为不同

azure - 为什么我的连续 azure webjob 运行该函数两次?