主机没有运行;请求将排队但在主机启动之前不会执行

问题描述 投票:1回答:2

通常当我重新发布带有一些小改变的webjob并尝试重新运行Webjob功能时SCM在Web门户中向我显示以下警告,并且我无法执行该功能

主机没有运行;请求将排队但在主机启动之前不会执行。

在这种情况下,主机始终运行,并且作业设置为单例,多个主机应该没有问题。

azure-webjobs azure-webjobssdk
2个回答
4
投票

WebJobs仪表板显示此消息,直到它从主机收到更新的“心跳”消息,指示主机正在运行。 JobHost将心跳消息写入blob存储(在path / heartbeats下的azure-webjobs-hosts容器中)。仪表板轮询心跳blob以获取特定主机ID,并在检测到主机尚未开始运行时显示此消息。主机启动和仪表板看到blob更新之间可能存在最小延迟。


1
投票

对我来说,这不是心跳问题或HostId命名更改。我的WebJobs在连续模式下正常运行,但无法单独运行它们。这是在更新AssemblyInfo.cs中的版本后发生的。

解决/解决方法:

  • 下载Azure Storage Explorer
  • 在App Service上,从AzureWebJobsStorageAzureWebJobsDashboard复制连接字符串
  • 停止你的WebJobs
  • 连接到Azure Storage Explorer中的Web作业存储帐户
  • 删除这些容器和队列: 集装箱 azure-jobs-host-archive azure-jobs-host-output azure-webjobs-dashboard azure-webjobs-hosts 队列 azure-webjobs-* 如果您使用自定义hostid,则用于Web作业的其他队列
  • 启动WebJobs
© www.soinside.com 2019 - 2024. All rights reserved.