【发布时间】:2024-05-23 19:10:02
【问题描述】:
我对IIS的生命周期不是太清楚,但我的大致理解是:
- IIS 每隔几个小时就会自行重置。这显然是为了解决任何内存泄漏、资源死锁等问题,即。这似乎是一个清理操作。
- 每隔几个小时(我想我读了 23 小时),服务器就会停止侦听入站请求并运行 Application_End。外部页面请求将重新启动应用。
我能否对为什么会出现这些行为有更多的推理?特别是关于第 2 项...我的服务器运行的内部调度行为昨晚完全死了。原因是 Application_End 发生并且没有客户请求再次启动 IIS 服务器。这似乎很奇怪。为什么不只是清理内存泄漏等,然后让 IIS 完全按原样运行呢?我能想到的唯一原因是它可以让服务器回收 IIS 使用的内存/cpu,但这似乎很荒谬,并且是错误的原因,例如我的调度程序问题!
【问题讨论】:
-
已经有了很好的答案。我仍然不清楚的一件事是为什么 IIS7 不会在重启事件发生后立即完全初始化。 IE。为什么我需要等待网页请求来启动我的池,而不是让服务器自动运行并全力以赴地接收客户端 Web 请求?
标签: c# asp.net performance iis-7