2009-06-06 209 views
3

“固定次数请求”之后,IIS的应用程序池设置对回收再利用有什么影响?“固定请求次数”之后的应用程序池回收

假设这个数字是100,并且第99个人连接到我的网站,那么第100个人来了,并且将触发应用程序池回收。

这是否意味着会话1-99的所有会话信息都将丢失(当应用程序池工作进程重新启动时,进程内会话将过期)?

回答

4

你基本上是对的,但它不是人,而是要求。在您的应用程序上调用的每个aspx页面都会添加,达到阈值时,应用程序池将被回收,应用程序域(如果使用.Net)被卸载并且所有内容都会重新启动。你会失去Session,Application和静态变量。如果您使用经典的asp或php,则每个会话和全局变量都会丢失。

一些命中阈值有点矫枉过正。您应该禁用它或将其设置为一个巨大的数字。默认情况下,如果我记得很清楚,如果没有请求,IIS6应用程序池将每隔15分钟回收一次,并且您还可以在应用程序使用的总内存阈值上触发回收。

+0

还有一个问题,我们也可以在特定的时间设置IIS工作进程回收,这是否意味着(1)在特定的时间IIS将回收或者它意味着(2)在特定时间如果没有用户访问IIS(没有活动连接),工作进程会回收? – George2 2009-06-06 09:00:29

3

这是非常正确的。如果您没有使用某种会话场或会话信息的数据库支持,那么在应用程序池回收时它将会丢失。我会建议尽量不要求任何会话信息 - 这将使您的应用程序更具可扩展性和可靠性,因为它更贴近底层HTTP的无状态特性。

+1

还有一个问题,我们也可以在特定的时间设置IIS工作进程的回收,这是否意味着(1)在特定的时间IIS将回收或它的意思是(2)在特定时间如果没有用户访问IIS(无活动连接),工人进程将回收? – George2 2009-06-06 09:01:22

相关问题