gpt4 book ai didi

iis - 当 IIS 应用程序池可能空闲时,如何允许作业在下类后运行?

转载 作者:行者123 更新时间:2023-12-04 17:41:00 30 4
gpt4 key购买 nike

我正在尝试将 hangfire 与 .net 核心网络应用程序结合使用。这些示例看起来很简单,但是我有疑问。

如果我想按 cron 计划运行作业,即使 iis 应用程序池处于休眠状态,我是否应该考虑将 hangfire 服务器置于 windows 服务中?

如果在 Web 应用程序中同时使用服务器和客户端,文档中提到修改根 .net 配置文件以允许您的应用程序始终运行。 http://docs.hangfire.io/en/latest/deployment-to-production/making-aspnet-app-always-running.html

为什么不能简单地将应用程序池超时设置为 0?

另一种选择是将 hangfire 服务器作为 windows 服务项目的一部分。如果不是真的需要,我宁愿不要乱用 Windows 服务。这需要运行计划作业(通过 cron 计划)来执行,即使没有用户向应用程序发出请求以防止应用程序池进入休眠状态。设置应用程序池空闲超时应该做同样的事情,不是吗?

最佳答案

永远不要期望网站会运行这样的扩展作业。它们旨在运行快速(ish)调用和操作并返回结果。建议使用 Windows 服务。一旦你开始搞乱应用程序池超时等,你就是在自找麻烦。

随着 Net Core 2.2 的发布,我现在可以修改这个答案。 MS 添加了“后台任务”服务,该服务允许在服务器处于事件状态时在服务器上运行内容:

https://learn.microsoft.com/en-us/aspnet/core/fundamentals/host/hosted-services?view=aspnetcore-2.2&tabs=visual-studio

关于iis - 当 IIS 应用程序池可能空闲时,如何允许作业在下类后运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54520675/

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