概述
这篇文章为如何在大容量的环境下优化IIS 4.0的安装提出了一般性的指导。本文是为那些熟悉Microsoft Windows NT 和Microsoft IIS的Web服务器系统管理员准备的。因为每个Web 站点都是独特的,Microsoft建议客户认真地策划、测试并监控他们的站点,使用Windows NT服务器以及现在市场上提供的各种标准套装软件。这样就可以确保在一个IIS 4.0 Web站点上配置的内容能够根据用途得到最优化。
调整的优化设置
一、通用的调节优化
1、将Windows NT服务器设置为AppServer
设置步骤
在桌面上,右击网络邻居并选择属性。在服务标签上,双击服务器服务。要确保网络应用程序是选中的。
作用原理
IIS 4.0 的规模增长了,在 文件服务器的设置下页面出错也增加了。AppServer设置指示Windows NT更大幅度地整理文件缓冲器。
2、安装hotfix并且取消不相关的脚本映射
设置方法
从the ftp site download下载并运行hotfix功能。你需要选择适当的平台(Intel或 Alpha)。 用Microsoft管理控制台,在 IIS snap-in下航行到Web 站点(虚拟服务器)。右击默认的Web 站点和/或有你的内容 存在的任何其它Web 站点,并且选择 属性。选择Home Directory property,在应用程序设置区点击配置按钮。将不使用的映射都去掉,但是留下至少一个映射(服务器要求至少要有一个映射)。Microsoft建议如果没有其它映射在使用的话,就保留.asp扩展名。
作用原理
为了使用户更容易升级到IIS 4.0,IIS 4.0查看每个文件的扩展名,甚至在只读目录(一个取消了脚本的 目录)中也要检查。这个额外的负载是可以消除的。按照设计方案, 服务器要求至少有一个脚本映射,所以要保留ASP映射。
3、为了大容量站点或基准测试,要将性能条设置为100,000以上
设置方法
用Microsoft管理控制台,在IIS snap-in下航行到Web 站点(虚拟服务器)。右击默认的Web站点和/或有你的内容存在的任何其它Web站点,并且选择属性。选择性能页,将滑动条一直向右移动,直到100,000 以上。
作用原理
这样控制了IIS可用的资源量。因为IIS可以承担繁重的使用,这对于大多数基准是共同的,因此IIS可以保留目前没有使用的额外资源。注意:这个设置只用于大容量的站点。对于小容量站点,这个设置应该变为最小。
4、为将来的应用程序关闭性能推进
设置方法
打开控制面板,双击系统图标,选择性能属性页。将应用程序性能滑动条移到None。
作用原理
因为大容量的站点通常都建立在专用的Web服务器上,所以向Web服务器提供最大限度的系统资源 很重要。这个设置将Web 服务器程序可用的CPU周期数最大化了。
二、日志调节优化
1、不需要时关闭日志
设置方法
用Microsoft管理控制台,在IIS snap-in下航行到Web站点(虚拟服务器)。右击默认的Web 站点 和/或有你的内容存在的任何其它Web站点,并且选择属性。从站点属性页,取消对日志的激活。 点击OK
作用原理
这样就释放了一些系统资源,有助于提高性能。
2、如果日志被激活,就将日志写到一个带有允许写回缓冲器的控制器的条形区域,特别是当日志磁盘上的使用比较频繁的情况
设置方法
用Microsoft 管理控制台,在IIS snap-in下航行到Web 站点(虚拟服务器)。右击默认的Web 站点 和/或有你的内容存在的任何其它Web 站点,并且选择属性。选择Web 站点属性页,在日志区点击属性按钮,要确保路径是引导到一个条形区域的。
作用原理
对繁忙的站点来说,日志磁盘会成为一个瓶颈,因为这是一个争夺的焦点。服务器上的所有请求 都要争夺一个同样的文件。
三、网络调节参数
1、将网络接口卡(NIC)的接收缓存设置成最大值。如果这是一个受控制的环境或为了基准测试的目的,就要在服务器上和客户机上都设置
设置方法
阅读你的NIC文档的详细内容。在网络控制面板下,这个参数通常都是用NIC的属性设置的。
作用原理
在接收端丢失信息包会导致TCP的重新发送。这样使接收端的丢失的信息包数降到最小,因此可以提高 性能。
2、在注册文件中设置TCP参数
设置方法
用Regedt32, 航行至HKLM/ CurrentControlSet/ Services /TCPIP Parameters。如果那里没有 MaxUserPort 的值,就将其加上,并设置为0xfffe。如果没有TcpWindowSize的值,就将其加上,并设置为0x4470。
作用原理
我们并不想把用户端口用完。并且,一个较大的窗口空间对于高速网络工作更好(当窗口填满时 TCP就会停止)。
四、SMP调节参数
1、活跃IIS线路的控制数
设置方法
在Windows NT性能监控中的系统下,监控处理器排队深度对象,看看是否活跃线路过多。如果在系统中有N个处理器,那么排队深度介于N到3N之间是最好的。如果你不能确定的话,就保留默认值。对于静态的工作量,可以将MaxPoolThreads设置为1,将PoolThreadLimit设置为系统中的处理器数。(这些值是用regedt32.exe在Windows NT 的注册文件中设置的。设置这些参数的细节请看下一部分)。
作用原理
为了使引入的请求不被堵塞,系统中要有足够的线路。但是每条线路都要使用系统资源,并潜在地 导致不必要的上下文转换。目的是在不导致额外的上下文转换的前提下将IIS使用的线路数最大化。 这样做能够在对称多处理器(SMP) 硬件上保证更好的性能。
五、静态工作量的优化
1、将对象缓存时间设置为Live (TTL)默认值为30秒
设置方法
使用Regedt32, 航行到HKEY_LOCAL_MACHINE/ System/ CurrentControlSet/Services/InetInfo/Parameters。如果没有ObjectCacheTTL的值,就增加它。将其设置为需要的值。如果你不能确定 要求IIS将一个未使用的文件保持在打开的状态多长时间,就保留ObjectCacheTTL 的默认值。
作用原理
这改变了缓冲器清道夫运行的频率。如果你的内容与内存相配合并大部分是静态的,就可以将清道夫 设置为0xffffffff来取消它。一个较高的ObjectCacheTTL 对于“流行”文件较少的站点是最好的。如果 频繁地被请求的文件数量较大,ObjectCacheTTL 高是没用的。将这一条目设高就告诉IIS将未使用的 文件打开时间更长些。如果你希望这些文件在一个TTL的周期内被重复使用的话,这是有帮助的。如果 你不希望这些文件经常被重复使用,或者系统资源看起来较低的话,那么就使用一个低的ObjectCacheTTL 来保存资源。还可以使用OpenFilesInCache 来限制IIS保持打开状态的文件数。
2、将OpenFileInCache 设置为足够大的值以缓存所有打开的句柄。默认值:对于每32MB的物理内存为1000 。
设置方法
用Regedt32, 航行至HKEY_LOCAL_MACHINE/System/CurrentControlSet
/Services/InetInfo/Parameters。 如果没有的话,就增加OpenFileInCache的值。将其设置成需要的值。这个值的确定依赖于你希望被 IIS缓冲器所利用的内存数以及你希望缓存的文件句柄数。
作用原理
大的Web 站点为使性能最高,需要将更多的文件句柄保持在打开状态。如果你站点的内容是静态的,那么 将从RAM中而不是从磁盘上提供的文件数最大化能够极大地提高Web 服务器的性能。在Windows NT 性能 监控中的Internet Information Service Global下,你可以使用缓存的文件句柄计数器来监控缓存的 文件句柄的个数。
六、ASP性能的优化
1、将ProcessorThreadMax设置为一个低值。
设置方法
使用Using Regedt32, 航行到HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet
/Services/W3SVC/ ASP/ Parameters。如果没有的话,增加ProcessorThreadMax的值。减少这个值并对性能进行监控。如果发现性能降低,就返回到以前的值。
作用原理
改变了IIS分配给MTS的每个CPU的线路数。对于写得较好的脚本,这个个数越少越好。这样会降低争夺 的次数。
2、将AspScriptEngineCacheMax属性设置为ProcessorThreadMax, 乘以系统中处理器的个数。默认值:30
设置方法
与Web站点、路径和页面有关的信息都存储在IIS配置数据库中(metabase)。IIS 4.0 包含了一些脚本, 让你在metabase中修改设置。从SystemRoot, 航行到/System32/ inetsrv/ adminisamples。将 adsutil.vbs. Set /w3svc/ AspScriptEngineCacheMax键入 ProcessorThreadMax中,并乘以系统中处理器的个数。
作用原理
这就允许每个ASP线路缓存一个脚本引擎,结果是处理ASP页面的效率更高。
3、为ASP应用程序激活缓冲器
设置方法
用Microsoft管理控制台,在IIS snap-in下航行到Web 站点或ASP应用程序名空间。右击站点或应用程序 并选择属性。选择Home/Virtual Directory 页。在应用程序设置部分点击配置按钮。点击App选项属性页。 点击激活缓冲器选项。点击OK,然后再次点击OK。
作用原理
设置了这一选项就将ASP向浏览器的输出缓存起来。这样就允许服务器向客户机释放全部的响应,而不是 在服务器生成内容的同时释放
4、将Session的Timeout值最小化
设置方法
用Microsoft 管理控制台,在IIS snap-in下航行到Web 站点(虚拟服务器)。右击默认的Web 站点 和/或有你的内容存在的任何其它Web 站点,并且选择属性。选择Home Directory 属性页。在应用程 序设置部分点击配置按钮。点击App选项属性页。将Session 的Timeout 设置成你需要维持一个用户 session 状态的最小的时间值。
作用原理
在ASP中用Session对象来维持Session需要系统资源。想象一下,在任一给定时间,有1000个用户 与站点相连接。这就意味着服务器要分配资源来维持每个用户的session状态。服务器需要维持session状态的时间越长,占用资源的时间越长。因此,将Session的Timeout值最小化可以优化服务器资源并提高性能。
大容量站点的优化设置 IIS
最新推荐文章于 2025-06-06 10:51:40 发布