1

嗨,我已经面临这个问题好几天了。希望我能在这里找到一些解决方案。

我有一个 dotnet 核心应用程序,我在其中实现了 HostingService 以从数据库中获取一些记录并将其推送到石英触发器。

以下在 IIS 中运行良好,但部署到 Azure HostingService 时运行了几次迭代,一段时间后没有日志。

我一直在使用此链接中的示例。

我的 Execute 看起来像这样

Execute:
{
   for(;true;)
   {
      writelog()
      List data = getfromdb();
      foreach(var d in data )
      {
        if(checklogic)
        {
          pushtoquartz(d)
        }
      }
   }
}

我需要同时解雇很多工作,比如每天上午 10 点,这可以达到 10,000 多个。任何有关实施的建议,或任何设计缺陷(如果有)在当前实施中,或任何建议真的很感激。

我为此编写了另一个实现,这次我使用 Hangfire 每 1 分钟检查一次数据库记录。这似乎有一个问题,在 IIS 中也很有效,但在 Azure 中却没有。实现如下

List data = getfromdb();
writelog()
foreach(var d in data )
{
 if(checklogic)
  {
    pushtoquartz(d)
  }
}

已处理异常。

感谢您通读。第一次在 stackoverflow 上,如有必要,我可以添加更多我错过的信息。

环境:

  • 点网核心 v3.1
  • Azure 应用服务 Linux B1 层
4

0 回答 0