gpt4 book ai didi

asp.net - 当托管在 IIS (ASP.NET) 上时,Quartz 在后台运行多长时间?

转载 作者:行者123 更新时间:2023-12-02 21:14:48 26 4
gpt4 key购买 nike

我有一个 ASP.NET 网站,我正在使用 Quartz 来做一些后台工作。 Quartz 作业设置为每 5 分钟触发一次。

威尔 quartz :

  1. 最后一个用户离开后在后台持续运行网站?
  2. 在某个时间点停止,并在新用户进入网站时继续?

如果答案是#2,有没有办法让作业一直运行?

最佳答案

在某个时刻,经过一段时间的不活动后,您的 IIS 托管应用程序将进入某种“ sleep 模式”。从这一刻起,您的触发器将不再启 Action 业,直到您的应用被尝试访问它的用户重新激活。

以下是一些可供您使用的解决方案:

  • 在单独的 Windows 服务中运行您的作业。需要一些重构工作,但显然是最安全的解决方案

  • Hangfire 是另一个 .Net 后台作业库。这是他们向用户提供的解决此问题的链接,作者:Making ASP.NET application always running 。请注意,您需要完全控制托管环境才能实现此目的。

  • 您可以将某些服务设置为 Pingdom以防止您的网站陷入这种“ sleep 模式”。 但是,我不会推荐此解决方案。

请注意,您的应用进入“ sleep 模式”所需的时间可能会因环境而异。如果您的情况需要超过 5 分钟(每个作业之间的时间),此过程可能足以保持您的网站正常运行。事实上,它可以作为解决方案#3(使用外部服务频繁地访问您的环境)

关于asp.net - 当托管在 IIS (ASP.NET) 上时,Quartz 在后台运行多长时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37937294/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com