IIS 6.0允许将应用程序池配置成一个Web园(Web Garden)。要理解Web园的概念,可以设想这样一种情形:假设有一个IIS 5.0服务器和三个Web网站,每一个Web网站运行着相同的应用程序,如果IIS 5.0能够自动按照圆形循环的模式将请求依次发送给这些功能上等价、实际上分离的Web网站,将负载分离到三个不同的进程,就可以构成一个小型的Web农场(Web Farm)——这就是Web园。
在IIS 6.0的Web园中,我们不必创建额外的Web网站,只要指定用于某个应用程序池的工作进程的数量就可以了。具体的配置步骤是:打开应用程序池的“属性”对话框,转到“性能”页,在“Web园”下面的“最大工作进程数”输入框中输入进程数量,如图八。当服务器的负载较小,不需要额外的工作进程时,IIS 6.0在一定的时间后(默认20分钟,可配置)自动缩减实际的工作进程数量;如果负载变大,需要额外的工作进程,IIS 6.0再次增加工作进程数量。这一切操作都自动进行,不需要管理员干预。
Web园:在Web园中你可以配置此应用程序池所使用的最大工作进程数,默认为1,最大可以设置为4000000; 配置使用多个工作进程可以提高该应用程序池处理请求的性能,但是在设置为使用多个工作进程之前,请考虑以下两点:
每一个工作进程都会消耗系统资源和CPU占用率;太多的工作进程会导致系统资源和CPU利用率的急剧消耗;
每一个工作进程都具有自己的状态数据,如果Web应用程序依赖于工作进程保存状态数据,那么可能不支持使用多个工作进程。
问: IIS 6.0 具有一个名为 Web 园的新功能,有了它,可以将应用程序池配置为使用多个工作进程。IIS 何时创建额外的工作进程?在我们实施 Web 园之前,我们应该了解哪些知识?
答:在您创建应用程序池时,就会通知 IIS 6 创建一个工作进程,以传送指派给该应用程序池的 Web 站点、文件和文件夹的内容。您可以将应用程序池配置为启动多个,而非一个工作进程,这样可以提高可扩展性。这个功能的名为 Web 园,是小型的“Web 农场”。您无需使用多台计算机来传送相同的内容(Web 农场),而是可以使用一台计算机中的多个进程来传送相同的内容。
在将 IIS 6 应用程序配置为 Web 园时,您只需在“应用程序池属性”的“性能”选项卡的“最大工作进程数”框中,设置一个大于 1 的工作进程数。如果这个值大于 1,每个请求都将启动一个新的工作进程实例,可启动的最多进程数为您所指定的最大工作进程数。后续的请求将以循环的方式发送至工作进程。
Web 园在您的应用程序资源有限的情况下非常有用。例如,如果您到数据库的连接很慢,那么您可以使用多个工作进程来增加用户吞吐量,从而增加到数据库的连接数。
尽管在有些情况下使用 Web 园的用处非常大,但是要注意,每个工作进程的会话信息都是唯一的。由于请求以循环的方式路由到应用程序池工作进程,因此 Web 园对于会话信息存储在进程中的应用程序作用可能不大。在少数情况下,让多个工作进程运行同一个应用程序会造成资源竞争。例如,如果所有工作进程都试图将信息记录到日志文件中,或是使用那些不是专用于多个并发访问的资源,那么可能出现资源竞争问题。
如果不存在这些问题,那么 Web 园可能正是您所需的功能之一,而且其作用会非常大。
经过测试如果设置web园过多会导致后台无法登陆
asp暂时无法共享session,可以通过cookies,asp.net已经解决了这个问题可以参考下面的设置。
iis网站的web园的最大工作进程设置后导致session失灵,当进程数大于1,session就失效的解决办法
SESSION是保存在进程里面,所以,WEB园大于1时,有两进程,不能互相保存SESSION,所以失败!
把SESION设置成保存在服务器,便能解决了!
SESION设置成保存在服务器:ASP.NET配置设置—>状态管理—>会话状态设置 改为StateServer。
IIS6.0 WEB园配置
为应用程序池创建 Web 园请注意以下几点:
一、每一个工作进程都会消耗系统资源和CPU占用率;太多的工作进程会导致系统资源和CPU利用率的急剧消耗;
二、每一个工作进程都具有自己的状态数据,如果Web应用程序依赖于工作进程保存状态数据,那么可能不支持使用多个工作进程。
成资源竞争,让多个工作进程运行同一个应用程序会造成资源竞争
为应用程序池创建 Web 园可在以下几个方面增强性能:
一、可靠的请求处理:当应用程序池中的某个工作进程停止处理时(例如,当脚本引擎停止响应时),其他工作进程可以接受并处理该应用程序池的请求。
二、减少了资源争用:当 Web 园达到稳定状态时,按照循环方案每个新 TCP/IP 连接将分配给 Web 园中的一个工作进程。
这可以产生平衡工作负荷和减少绑定到工作进程的资源争用的效果。
使用 IIS 管理器配置 Web 园
一、在 IIS 管理器中,依次展开本地计算机和“应用程序池”,右键单击该应用程序池,然后单击“属性”。
二、单击“性能”选项卡,然后在“Web 园”下的“最大工作进程数”框中,键入要向应用程序池指定的工作进程数。(要形成 Web 园,必须为应用程序池键入一个大 于 1 的数值。
三、单击“确定”。
四、或者,还可以通过设置配置数据库属性 MaxProcesses 来配置 Web 园。MaxProcesses 属性确定了应用程序池允许服务于其请求的最大工作进程数。 值 0 表示没有工作进程提供服务的无托管应用程序池。
五、MaxProcesses 属性的默认值为 1,这是服务于应用程序池的工作进程的默认数量。要配置应用程序池使之成为 Web 园,可将 MaxProcesses 属性设 置为大于 1 的值。
使用 Adsutil.vbs 配置 Web 园
一、在“运行”对话框,键入 cmd,然后单击“确定”。
二、在命令提示符下,键入:
cscript %SystemDrive%\Inetpub\AdminScripts\adsutil.vbs set W3SVC/AppPools/ ApplicationPoolName /MaxProcesses n
用要为应用程序池提供服务的工作进程数替换 n。