1.单击开始,指向程序,单击以选择管理工具,然后单击Internet服务管理器。2.展开服务器的名称。3.在左侧窗格中,右键单击默认网站,指向新建,然后单击虚拟目录。4.在“虚拟目录创建向导”的第一个屏幕中,为虚拟目录键入别名或名称(如MyWebData),然后单击下一步。5.在第二个屏幕中,单击浏览。定位到为了存放内容而创建的内容文件夹。单击下一步。6.在第三个屏幕中,选择读取并运行脚本(如ASP)。请务必清除其他复选框。单击完成以结束向导。7.对于ASP内容,您可能希望确认是否创建了一个应用程序。为此,请右键单击新的虚拟目录,然后单击属性。8.在虚拟目录选项卡上,确保该虚拟目录的名称列在应用程序设置下的应用程序名框中。如果没有,请单击创建。注意:应用程序名不一定与虚拟目录别名相匹配。9.关闭属性对话框。
IIS一般默认 应用程序池有设置固定时间间隔(分钟) 默认1740,以及闲置超时(分钟) 默认20;如果我们 asp.net core+quartz.net 部署在IIS上执行长期定时任务时,需要将上来两项内容设置成0,(不回收);不然我们的定时任务会在IIS做回收时清理掉我们的定时任务。导致任务停止;如果可以做定期检测也是一种方式,本人比较偷懒,就不做回收。但是否会造成其他问题,需要观察iis程序池默认回收时间为1740分钟(29小时),若要自定义为不回收, *** 作如下,这样IIS除非手动回收,否则不会自动回收1 在IIS中找到这个站点所用的程序池,点击“高级设置…”
2 回收——固定时间间隔(分钟) 改为 0
3 回收——虚拟/专用内存限制(KB) 改为 0
4 进程模型——闲置超时(分钟) 改为 0 那一定是IIS的应用程序池回收的机制在作怪了。因为IIS的默认设置里面,如果一个站点所处的应用程序池超过一段时间没有被访问或者请求,IIS就会自动回收这个程序池,并且把进程杀掉。那进程里面的线程肯定也活不下来了。
但是我们可以通过设置应用程序池参数使其不会被简单的自动回收(有些情况无法避免,比如热部署的站点,错误数量超限等等)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)