有时,当IIS重新启动应用程序池时,它将在上一个实例完全关闭之前启动我的应用程序的新实例。这引起了很多问题,所以我想知道我能做些什么。
行动方针就是这样的。 (跨越约20秒)
首选我想完全禁用上述行为,IIS应该只允许一个实例。如果不可能,我可以在我的代码中检测其他实例是否正在运行,然后等待它在application_start中退出?如果不可能,解决这个问题的最佳方法是什么?
答案 0 :(得分:1)
禁用重叠回收:
“在重叠的回收方案中, 回收的目标流程 继续处理所有剩余的 替换工人请求 进程是同时创建的。该 新流程在旧之前就开始了 工作进程停止,请求是 然后转向新流程。这个 设计可防止延误服务, 因为旧的过程继续 接受请求直到新进程 已成功初始化,并且是 指示只有在关闭后关闭 新流程已准备就绪 请求“。
http://msdn.microsoft.com/en-us/library/ms525803(v=vs.90).aspx