IIS的性能优化[详解]--网摘_iis 进程释放句柄数-程序员宅基地

技术标签: 5、windows 应用  web服务  iis  性能优化  优化  磁盘  服务器  

IIS的性能优化[详解]--网摘


       IIS用了很长时间,但是要把它用好确实不容易。以下是我摘的一段关于IIS优化的文章,希望大家共同学习,更希望大家的补充。
       IIS是一个既简单又麻烦的家伙。简单的是安装它几乎不需要费什么脑筋,选择一下路径,然后一路按“下一步”就可以完成;配置也比较简单,只要有一定的NT和网络知识,照着说明书就可以架设一个像模像样的Web站点出来。然而管理IIS却没有想像的那样简单。使用一段时间以后,管理员往往会遇上服务器性能不良的情况。这时候,IIS的性能优化,就提上日程了。  导致IIS服务性能不良的原因有两个方面。一个是人为的,也就是说管理员在安装、配置IIS的时候没有进行优化或者配置错误。另一个则是客观上的,随着运行的服务种类,以及访问人数的增加,服务器原有的硬件配置已不能满足要求了,这就需要提高硬件配置。  在服务器配置上优化IIS性能  
1.IIS高速缓存是对IIS进行优化时要考虑的最重要的项目之一。服务器保留了一部分内存空间用作IIS高速缓存,为将来的请求存储对象,这样IIS就可从高速缓存中检索对象而不用从硬盘中检索。  调整IIS高速缓存的容量需要修改注册表,表项如下:  /HKEY_LOCAL_MACHINE
  /System
  /CurrentControlSet
  /Services
  /InetInfo
  /Parameters
  /MemoryCacheSize
  MemoryCacheSize的范围是从0道4GB,缺省值为3072000(3MB)。  IIS通过高速缓存系统句柄、目录列表以及其他常用数据的值来提高系统的性能。这个参数指明了分配给高速缓存的内存大小。如果该值为0,那就意味着“不进行任何高速缓存”。在这种情况下系统的性能可能会降低。如果你的服务器网络通讯繁忙,并且有足够的内存空间,可以考虑增大该值。必须注意的是修改注册表后,需要重新启动才能使新值生效。  
2.使IIS使用处理器时间最长。服务器的CPU处理器能力总是有限的。哪一个应用程序占用处理器的时间最长,谁的性能就能得到最大的提高。    (1)在NT的控制面板中,双击系统图标。  
    (2)单击性能标签。  
    (3)在应用程序性能下将游标拖到None的位置,这样就可以使所有正在运行的服务,包括IIS,使用处理器的时间达到最大值。  
3.服务器属性设置。在服务器属性里有一项可以使网络应用程序的总处理能力最大的选项,你当然应该选择它。  
    (1)在桌面上右键单击网络邻居图标,然后选择属性选项。  
    (2)单击“服务标签”。  
    (3)单击“服务器”,然后按“属性”。  
    (4)选择最大化网络应用程序的总处理能力。然后单击“OK。”  提高硬件配置来优化IIS性能  当进行了上述的优化配置,IIS的性能仍然没有什么明显改善的话,也许你应该考虑提高服务器配置了。然而事关银子问题,老板们一定不会轻易同意,除非你用事实说服他。你必须在首先提高什么硬件配置上面考虑清楚。以下是在进行IIS优化时需要考虑的有关硬件:  处理器:可以升级为速度更快的CPU,还可以再增加一个CPU。但是代价太高了(也许会换主板什么的),老板很难接受。  硬盘:硬盘空间被NT和IIS服务以如下两种方式使用:一种是简单地存储数据;另一种是作为虚拟内存使用。如果使用Ultra2的SCSI硬盘,可以显著提高 IIS的性能。  网络接口卡:如果服务器是在企业内部网上运行,那么可以考虑将他的网卡升级为100M网卡。这在网络带宽是瓶颈的情况下特别有效。  内存:增加内存可能是升级系统最简单、最有效的方法。也是笔者推荐的硬件升级首选方案。  那么如何知道需要进行硬件上的升级呢?这就和性能监视器的使用有关了。笔者会在其他文章中描述。在这里作简要介绍:比如你可以利用性能监视器来跟踪服务器上的CPU使用程度。并可以查看由内存调换到硬盘中的页面的数目和频率。将这些信息与内存使用情况以及其他系统信息相结合,就可以得到一张系统性能报告表。如果这些信息一直表现出很高的使用率,那么就说明应该升级硬件设备了。  优化IIS的注意事项  为了避免以后的头疼,在安装IIS之时就应该注意到IIS的优化。比如:  
1.为了提高性能和节约资源,应该只运行需要的协议。这一点很多管理员都没有注意,笔者曾见到在一台只作Web服务的机器上同时安装有NetBEUI、Tcp/IP和IPX协议。显然这是不合理的。  
2.应该将IIS服务器,设置为独立的服务器,不要让服务器去承受域控制器要求的额外负荷。试想:服务器一边在响应用户的登录,一边还要提供IIS服务,性能能不下降吗?  
3.可以把NT服务器的页交换文件分布到多个物理磁盘上,注意是多个“物理磁盘”,分布在多个分区上是无效的。另外,不要将页交换文件放在与WIndows NT引导区相同的分区中。  
4.使用磁盘镜像或磁盘带区集可以提高磁盘的读取性能。  
5.关于日志的记录,应该采用文件记录而不是记录到ODBC数据源。此外,还可以在记录期间增加用来记录日志的内存缓冲区的容量来减少磁盘的活动。该缓冲区的缺省容量值为64KB。  
6.最好把所有的数据都储存在一个单独的分区里。然后定期运行磁盘碎片整理程序以保证在存储Web服务器数据的分区中没有碎片。使用NTFS有助于减少碎片。笔者推荐使用Norton的 Speeddisk,可以很快地整理NTFS分区。  
7.虽然SSL可以提供相当可靠的加密传输。但是所需的额外开销会导致IIS服务器速度下降,尤其是在处理大型文件的时候。所以应该只对确实需要保护的目录进行SSL加密。+++++++++++++++++++++++++++++++++++++ +++   在安装Windows2000的时候,如果你选择了安装IIS,那么在安装的时候系统将会你的%SystemDrive%里创建一个 InetPub目录,而且还会在Inetpub目录下创建一个Scripts目录,IIS还会创建一个虚拟目录SCIPTS指向该目录,并且给这个目录执行权限。前段时间NSFocus安全小组研究发现的“Unicode解码目录遍历漏洞”大部分问题就是针对Web站点的可执行目录而言的,所以我们建议把该目录移到非系统盘在一定程度上可以保证一定的安全。

然而在我们选择安装系统组件的时候,无法自己定义IIS的安装盘符,所以才有了今天的这篇文章。  我们在安装系统的时候不选择安装IIS,等系统安装完成后手动来做,我们可以使用无人值守的方式自定义安装IIS 5.0。首先确认你的 Windows 2000的安装介质是可用的,本例中的安装介质是光盘,因此只要将安装光盘插入光驱即可,然后在你的硬盘或者软盘上创建一个无人值守安装文件,本例中我们将在D盘创建一个 IIS5install.txt 作为无人值守安装文件,下面我们看看该文件的内容:[Components] 所安装的组件
iis_common = on 公用文件
iis_inetmgr = on IIS管理器
iis_www = on WWW服务
iis_ftp = on FTP服务
iis_htmla = on Web方式的IIS管理器[InternetServer]
Path="D:/inetsrv" Common文件放置位置(如果你是卸载了IIS再手动装,公用文件还是会位置保持不变)
PathFTPRoot="D:/inetPub/FTPRoot" FTP的根路径
PathWWWRoot="D:/InetPub/wwwroot" WWW的根路径  将该文件存盘后,运行“sysocmgr /i:%windir%/inf/sysoc.inf /u:d:/iis5install.txt”,不会有提示框出现,系统将自动的为你安装好IIS,而且Scripts目录将会在D盘,使用 “Unicode解码目录遍历漏洞”也就失效了。  如果你需要安装更多的IIS组件,点击后出现的是一个比较详细的无人值守安装文件IIS安全  去年下半年关于IIS的漏洞层出不穷,鉴于目前IIS的广泛使用,觉得有必要把收集的资料加以总结一下。下面是漏洞名称列表点击可以打开,以供大家参考:
(1)
Null.htw
http://www.yesky.com/20010521/180704.shtmlhttp://www.yesky.com/20010521/180704.shtml
(8)webhits.dll & .htw
http://www.yesky.com/20010521/180704_2.shtml
(2)MDAC- 执行本地命令漏洞
http://www.yesky.com/20010521/180704.shtml
(9)ASP Alternate Data Streams(::$DATA)
http://www.yesky.com/20010521/180704_2.shtml
(3)ASP Dot Bug (10)ISM.DLL 缓冲截断漏洞
http://www.yesky.com/20010521/180704.shtml
(4)idc & .ida Bugs (11)存在的一些暴力破解威胁.htr程序
http://www.yesky.com/20010521/180704.shtml
(5)+.htr Bug
http://www.yesky.com/20010521/180704_3.shtmlhttp://www.yesky.com/20010521/180704_3.shtml
(12)Translate:f Bug
http://www.yesky.com/20010521/180704_4.shtml
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/alei8583/article/details/2158194

智能推荐

K210 图像识别 (加训练模型)_k210图像识别-程序员宅基地

文章浏览阅读3.4w次,点赞85次,收藏742次。以管理员的方式运行下载模式 高速改为低速模式_k210图像识别

解决Unity开启多个协程卡顿问题_unity 多个协程-程序员宅基地

文章浏览阅读3.1k次。Unity开启多个协程往往造成卡顿,因此需要每完成一个协程再新开启一个协程。for (int i = 0; i < result.result.Count; i++) { try { BaseStation responses = JsonMapper.ToObject<BaseStation>(JsonMapper.ToJson(result.result[i])); ..._unity 多个协程

spring+SpringMvc+Mybaits配置多个数据库_springmvc+mybatis配置多个数据库-程序员宅基地

文章浏览阅读410次。一、配置文件二、创建一个实体类,切换数据库三、切换数据库的代码_springmvc+mybatis配置多个数据库

前端框架们_阿里 前端框架 乌米-程序员宅基地

文章浏览阅读675次。我司打算搞个地图应用,领导发给我一份ppt,里面有个前端的技术架构图:what!前端技术都进化得这么复杂啦?就搞一个前端,至于用到这么多框架?就问你晕不晕!底部的es6,fetch是基础的语法,这个没什么好讲的。arcgis jsapi,是地图服务接口,也没什么好说的。webpack,打包工具,还行吧。顶部的echarts,经常用,很好用,不错。但ant design是蚂蚁金服的东东,与r..._阿里 前端框架 乌米

Turn on ClearType。打开ClearType看英文资料不再那么费眼。-程序员宅基地

文章浏览阅读64次。下面是微软提供的在线打开ClearType 网址,装好插件之后按提示一步一步的点下去。发现还是比较爽的。呵呵~http://www.microsoft.com/typography/cleartype/tuner/Step1.aspx转载于:https://www.cnblogs.com/zwwon/archive/2007/07/10/812598.html..._chrome 英文和数字显示cleartype

jQuery.template.js 简单使用-程序员宅基地

文章浏览阅读125次。之前看了一篇文章《我们为什么要尝试前后端分离》,深有同感,并有了下面的评论:我最近也和前端同事在讨论这个问题,比如有时候前端写好页面给后端了,然后后端把这些页面拆分成很多的 views,有时候还会在这些 view 中写一些 c# 代码,突然有一天前端页面的样式出错了,但前端那里并没有问题,然后后端把前端叫过来,说你在我这里调吧,因为你没有后端的调试环境,然后前端就会很不爽,然后。。。你懂的!..._/template/pc/skin/js/jquery.js

随便推点

《鸟哥的Linux私房菜》第四版导学_好了a18第四-程序员宅基地

文章浏览阅读1.1w次。鸟哥的Linux私房菜0、计算机概论0.1、电脑:辅助人脑的好工具(什么是电脑?什么是计算机a3)0.1.1、电脑硬件的五大单元(电脑硬件大致可分为三个部分b3)(什么是CPU a4)(CPU主要的组成部分b4)(算术逻辑单元的功能c4)(控制单元的功能d4)(CPU读取的数据来源e4)(电脑硬件的五个组成部分f4)(数据在内存流动的基本知识g4)0.1.2、一切设计的起点:CPU架构(常见的两种CPU架构a5)(世界上使用最广的CPU b5)(常见的RISC指令集CPU c5)(常见的CISC指_好了a18第四

卡莱特led显示屏调试教程_卡莱特A接收卡调屏步骤-程序员宅基地

文章浏览阅读3.8k次。卡莱特5A接收卡调屏步骤卡莱特5A接收卡支持千兆网卡和发送卡两种发送方式,两种方式在5A接收卡的设置方面步骤相似,本文将讲述在千兆网卡发送条件下,5A接收卡的参数设置步骤。一、硬件连接1、发送卡连接图详见《卡莱特发送卡设备连接操作》2、千兆网卡连接图千兆网卡连接拓扑图千兆网卡硬件连接注意事项:a)电脑网卡必须是千兆网卡;b)电脑千兆网卡驱动必须安装正确;c)千兆网卡与5A接收卡、5A接收卡之间的网..._卡莱特指示灯

react Link跳转无效_React Native开发之react-navigation详解-程序员宅基地

文章浏览阅读299次。众所周知,在多页面应用程序中,页面的跳转是通过路由或导航器来实现的。在0.44版本之前,开发者可以直接使用官方提供的Navigator组件来实现页面的跳转,不过从0.44版本开始,Navigator被官方从react native的核心组件库中剥离出来,放到react-native-deprecated-custom-components的模块中。 如果开发者需要继续使用Navigator,则需要..._react navigate(-1) url不生效

python倒计时60,Python微项目分享之重要事件倒计时-程序员宅基地

文章浏览阅读109次。作者:JiawuZhang出品:JiawuLab(ID:jiawulab)微项目系列是JiawuLab原创栏目,每期选取一个自创项目或发现有趣的项目,进行代码、逻辑分析,达到python学习目的。大家好,我是JiawuZhang,本期微项目是——事件倒计时。项目介绍“11月11日0点0分0秒!”你是不是也在等着这个时间?看看电视,玩玩手机,刷刷购物车,只为等着这个时间到来。图片来自网络我老婆也是这..._python倒计时60秒

Could not connect to https://mirrors.tuna.tsinghua.edu.edu.cn/anaconda/pkgs/free/noarch/_could not connect to mirrors.tuna.tsinghua.edu.cn-程序员宅基地

文章浏览阅读5k次。解决方法:删除 .condarc文件 。 .condarc以点开头,一般表示 conda 应用程序的配置文件,在用户的根目录 (windows:C:\users\username\,linux:/home/username/)。但对于.condarc配置文件,是一种可选的(optional)运行期配置文件,其默认情况下是不存在的。 ..._could not connect to mirrors.tuna.tsinghua.edu.cn

MAC安装git的三种方式-程序员宅基地

文章浏览阅读1.7w次,点赞7次,收藏25次。以上是在MAC操作系统中安装Git的三种不同方式。Homebrew是最方便的方式之一,但如果您不想使用Homebrew,则可以选择从官方Git网站下载安装程序或使用Xcode Command Line Tools安装Git。无论您选择哪种方法,都应该能够很容易地安装和使用Git。_mac安装git

推荐文章

热门文章

相关标签