IIS 超时时间
原文链接:https://www.bbsmax.com/A/MAzAr6K1J9/
asp.net 默认的 session state 模式是 in proc(进程内),数据是在网站的应用程序池里面保存的。这样在 web.config 设置的超时时间,是在应用程序池没有发生回收的基础上才是有效的。
这样就出现了问题,为什么应用程序池会发生回收?如何禁止应用程序池的回收,让 session 的数据可以保存得时间长一点呢?
一、应用程序池设置
这和 IIS 应用程序池的两个设置有关:
【回收】里面的【固定时间间隔(分钟)】和【进程模型】里面的【闲置超时(分钟)】,这两项的默认设置大概是二十或三十分钟的样子。也就是说,在应用程序池的运行时间达到设置的间隔,应用程序池会发生回收,session 会被清空;在网站空闲,即没有请求的时间达到设置值,应用程序池会发生回收,session 会被清空。
这种回收的行为在一个正式运营的网站上面,是很不合适的。我觉得 IIS 的默认值是这样也有点奇怪,因为默认值应该是一个最通用,适合最多人的一种设置,这两项的默认值显然不是。可能 windows 毕竟是最流行的桌面系统,考虑到回收可以节省资源,不影响其他的工作任务,才这样设置的吧。服务器一般都是单一的工作任务,不进行回收带来的价值,明显是高于所消耗的资源的。
所以,如上面的截图所示,我建议把这两项都设置为 0,禁用这两种回收行为
二、网站属性 高级设置
iis性能指标的各种概念:连接数、并发连接数、最大并发工作线程数、应用程序池的队列长度、应用程序池的最大工作进程数详解,感兴趣的同学参考下。
一般购买过虚拟主机的朋友都熟悉购买时,会限制IIS连接数,这边先从普通不懂代码用户角度理解IIS连接数
顾名思义即为IIS服务器可以同时容纳客户请求的最高连接数,准确的说应该叫“IIS限制连接数”
三、网站 会话状态
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)
2022-04-10 js中 .map()和.filter()以及他们的区别
2022-04-10 Java 常用函数式接口之Supplier接口
2022-04-10 区别 stream().filter和stream().map,简单的不要不要的
2022-04-10 封装:element-ui之confirm消息提示框、确认提示弹框
2022-04-10 js中 判断数组 是否包含某元素 Array.indexOf("x")== -1