首先是修改注册表项来优化IIS的一些知识点:
1.优化IIS高速缓存:
修改注册表,重启服务器启用新的高速缓存值。
HKEY_LOCAL_MACHINE/SYSTEM|CurrentControlSet/Services/InetInfo/Parameters/MemoryCacheSize,
缺省值为3072000(3MB),如果内存允许,把该值设大一点可以有效提高网络处理能力。
2.优化IIS服务器参加排队的连接的最大数值:
HKEY_LOCAL_MACHINE/SYSTEM|CurrentControlSet/Services/InetInfo/Parameters/ListenBackLog值为服务器参加排队的连接的最大数值,
缺省设置(25)可能无法充分利用某个服务器的硬件和资源。如果服务器资源允许,可以适当增大ListenBackLog的值(该值没有上限)来提高性能。
3.减小日志文件大小以减少RAM占用:
要是内存使用捉襟见肘,可以考虑减小日志文件,让iis更加频繁的更新日志。
HKEY_LOCAL_MACHINE/SYSTEM|CurrentControlSet/Services/InetInfo/Parameters/LogFileBatchSize值默认为64。
4.调整IIS在IO阻塞期间的并发线程数:
HKEY_LOCAL_MACHINE/SYSTEM|CurrentControlSet/Services/InetInfo/Parameters/MaxConcurrency默认为0。
5.增加处理器的线程池:
HKEY_LOCAL_MACHINE/SYSTEM|CurrentControlSet/Services/InetInfo/Parameters/MaxPoolThreads缺省为10。
6.优化文件传输超时值:
IIS有一个文件传输超时值(在固定时间间隔内发送的字节数),以便检测网络上失败的文件传输。在某些intranet中,这种设置可以引起文件传输超时错。
HKEY_LOCAL_MACHINE/SYSTEM|CurrentControlSet/Services/InetInfo/Parameters/MinFileKbSec值默认1000,最大8192。
更多内容可参见http://www.chinaaspx.com/archive/other/559.htm
在当前应用程序设计成型或者对开发设计没有什么指手画脚的权利,同时硬件配置也不能随心所欲的优化时,首先应考虑
如何来对应用服务器进行优化:
1.优化内存。
为 IIS 优化内存时,您不必过多地考虑分配给每个进程、线程或缓存的内存量,因为操作系统足以能够自动调整它们之间的内存分配。
* 计算机名/内存/可用内存 - 该计数器跟踪系统中的可用内存总量。操作系统尝试将该值保持在 4 MB 以上。为了达到最佳性能,该值最好为内存总量的 5%。
* 计算机名/进程/工作集:Inetinfo - 该计数器跟踪 inetinfo.exe 自身所使用的内存量。它只提供最新的值,但如果对它观察一段时间,就能了解 IIS 的内存使用情况。
* 计算机名/进程/页面错误/秒.:Inetinfo - 该计数器跟踪服务器在每秒钟内将 inetinfo.exe 分页到硬盘上的次数。该数字越小越好。
2.硬盘:
* 加大分页文件。理想情况是有一个主分页文件,它的大小至少为系统内存的两倍再加 1 MB。计算机需要这一空间在崩溃时执行内存核心转储。
* 增加分页文件数量。默认有一个分页文件,但您可以也应该在系统中的每个硬盘上设置分页文件。
* 使用硬盘条带化提高分页文件性能。如果将主分页文件放在条带化硬盘集 (RAID 0) 或带奇偶校验的条带化硬盘集 (RAID 5),您将发现分页文件性能大大提高。
* 不要将日志文件与 Web 页存储在同一个硬盘上。这将阻止硬盘日志记录线程干预检索 Web 页的线程。
* 优化 Web 页存储。站点上的所有相关 Web 页应该存储在同一个逻辑分区,这样可以提高文件系统缓存的性能。同时,Web 页文件不应有任何碎片,这样可以极大地加快读取单个文件的速度。
更多内容见:http://support.microsoft.com/?scid=kb;zh-cn;305313&spid=810&sid=49