这是一种保持 ASP.NET 应用程序存活且不被回收的安全方法吗?

发布于 2024-09-16 16:40:22 字数 524 浏览 4 评论 0原文

我在 global.asaxApplicaiton_start 中启动了一个计时器,每 20 分钟访问一次我的应用程序。

void Application_Start(object sender, EventArgs e) 
{
System.Timers.Timer tm = new System.Timers.Timer(20 * 60 * 1000);
tm.Elapsed += new System.Timers.ElapsedEventHandler(tm_Elapsed);
}

void tm_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
{
System.Net.WebRequest rqst = System.Net.WebRequest.Create("MySite URL");
rqst.GetResponse();
}

这是安全的方法还是其他方法。我这样做是为了使用quartz.net 执行计划作业...

I ve started a timer to visit my application every 20 minuates in Applicaiton_start in global.asax.

void Application_Start(object sender, EventArgs e) 
{
System.Timers.Timer tm = new System.Timers.Timer(20 * 60 * 1000);
tm.Elapsed += new System.Timers.ElapsedEventHandler(tm_Elapsed);
}

void tm_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
{
System.Net.WebRequest rqst = System.Net.WebRequest.Create("MySite URL");
rqst.GetResponse();
}

Is this a safe way or anyother ways. I am doing so to execute schedule jobs using quartz.net...

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

南街女流氓 2024-09-23 16:40:27

您应该能够修改 IIS 来执行此操作。 IIS 设置为在“x”分钟不活动后关闭应用程序。您的代码可能会阻止该网站因不活动而被关闭。

但是,IIS 默认设置为每“x”分钟/小时回收一次应用程序。你的代码不会阻止这个。无论活动如何,它都会发生。它旨在清除任何内存泄漏等。因此,如果您将其关闭(也可以在 IIS 中执行此操作),那么您必须小心,确保您的站点性能不会随着时间的推移而降低。

You should just be able to modify IIS to do this. IIS is set up to take down applications after 'x' minutes of inactivity. Your code would probably stop the site being taken down due to inactivity.

However, IIS is also by default set to recycle applications every 'x' minutes/hours. Your code would not stop this. It happens regardless of activity. It is designed to clear up any memory leaks, etc. so if you switch this off (you can do that in IIS too) then you must be carefull that your sites performance does not degrade over time.

人心善变 2024-09-23 16:40:25

虽然自动 ping 应用程序是使其保持活动状态的一种方法,但您还可以将 IIS 中的应用程序池配置为不回收:

alt text

只需取消选中闲置后关闭工作进程复选框即可。此外,在回收选项卡上,您还可以找到其他有用的选项。

While autopinging your application is one way of keeping it alive you could also configure the application pool in IIS to not recycle:

alt text

Just uncheck the Shutdown worker processes after being idle for checkbox. Also on the Recycling tab you will find other useful options.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文