一. IIS各版本间的区别

IIS 5.0

IIS 5.1

IIS 6.0

平台

Windows 2000

Windows XP Professional

Windows Server 2003 家族

体系结构

32 位

32 位和 64 位

32 位和 64 位

应用程序进程模型

TCP/IP 内核 DLLhost.exe(处于中等或高应用程序隔离模式下的多个 DLL 主机)

TCP/IP 内核 DLLhost.exe(处于中等或高应用程序隔离模式下的多个 DLL 主机)

HTTP.sys 内核 当 IIS 以 IIS 5.0 隔离模式运行时:Inetinfo.exe(对于进程内应用程序)或 DLLhost.exe(对于进程外应用程序) 当 IIS 以工作进程隔离模式运行时:W3wp.exe(多工作进程)

配置数据库配置

二进制

二进制

XML

安全性

Windows 身份验证 SSL Kerberos

Windows 身份验证 SSL Kerberos 安全向导

Windows 身份验证 SSL Kerberos 安全向导 Passport 支持

远程治理

HTMLA

无 HTMLA 终端服务

远程治理工具 (HTML) 终端服务

群集支持

IIS 群集

Windows 支持

Windows 支持

WWW 服务

Windows 9x 上的个人 Web 治理器 Windows 2000 上的 IIS

(可选)Windows XP Professional 上的 IIS

Windows

二.关于wswp的一些知识。

Q : W3WP.EXE,应用程序,应用程序池之间的关系

A : 一个应用程序池可以包含多个应用程序,一个应用程序池创建一个W3WP.EXE进程.那么我们就不能简单的说一个进程池对应一个W3WP.EXE进程了!其实是多个应用进程池对应一个W3WP.EXE进程的.

Q : 如何启动和关闭W3WP.EXE这个进程

A : W3WP.EXE这个进程将在你访问www应用程序的时候启动.有人就会这么问了:"我启动了一个Web应用程序,发现系统自动创建了一个W3wp.exe进程。但我关闭这个Web应用程序后,发现这个刚创建的W3Wp.exe进程还在,请问如何关闭该进程。"这个进程不会在你关闭了这个程序以后,就马上关闭的.那是因为Http是无连接的访问,当你关闭了web网页,不会返回相应的关闭信息,所以W3WP.EXE这个进程不会因为你关闭了web应用程序尔关闭.

Q : 那么如何关闭这个进程呢?

A : 在应用程序池的配置中,"空闲超时"中设定合适的时间,系统默认的是20分钟.设定好指定的时间,那么在这个时间范围内没有在访问应用程序,那么系统会自动的关闭W3WP.EXE这个进程的.而不需要我们人为的干预的.也可以在Windows任务管理器里面,结束这个进程

Q : 如何让W3WP.EXE进程长时间的运行.

A : W3WP.EXE这个进程的默认生命是1740分钟,但依然是在这种默认的自然规律下,W3WP.EXE将在自己失业20分钟后,被系统直接枪杀.这样就可以看出,要想让W3WP.EXE长时间的生存,那我们可以通过”空闲超时”不作处理来达到我们的目的.

Q : 在IIS6下,经常出现w3wp.exe的内存及CPU占用不能及时释放,从而导致服务器响应速度很慢。

A: 解决内存占用过多,可以做以下配置 1、在IIS中对每个网站进行单独的应用程序池配置。即互相之间不影响。 2、设置应用程序池的回收时间,默认为1720小时,可以根据情况修改。再设置当内存占用超过多少(如500M),就自动回收内存。

解决CPU占用过多: 1、在IIS中对每个网站进行单独的应用程序池配置。即互相之间不影响。 2、设置应用程序池的CPU监视,不超过25%(服务器为4CPU),每分钟刷新,超过限制时关闭。

根据w3wp取得是那个一个应用程序池: 1、在任务管理器中增加显示pid字段。就可以看到占用内存或者cpu最高的进程pid 2、在命令提示符下运行iisapp -a。注意,第一次运行,会提示没有js支持,点击确定。然后再次运行就可以了。这样就可以看到pid对应的应用程序池。(iisapp实际上是存放在C:\windows\system32目录下的一个VBS脚本,全名为iisapp.vbs,如果禁止了Vbs默认关联程序,那么就需要手动到该目录,先择打开方式,然后选“Microsoft (r) Windows Based Script Host”来执行,就可以得到PID与应用程序池的对应关系。) 3、到iis中察看该应用程序池对应的网站,就ok了,做出上面的内存或CPU方面的限制,或检查程序有无死循环之类的问题。

Q : 另一种加载了某程序后发生w3wp.exe问题

A: 修改C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\CONFIG\machine.config,再配置节点<processModel>中有一个属性"memoryLimit",这个属性的值是一个百分比,默认为"60"(注意,是60%不是60M),即制定了ASP.NET进程能够使用所有物理内存的60%,当ASP.NET使用的内存量超过这个限额时,IIS会开始自动回收进程,即创建一个新的进程去负责应付HTTP请求,而将旧进程所占用的内存回收.

Q : w3wp.exe在进程中存在的原因 A : IIS 6.0版本中的w3wp.exe进程是会根据INTER信息的开放与否而决定是否存在,只要IIS提供WEB服务,该进程会始终存在,无论是否支持asp或asp.NET等类似语言脚本,w3wp.exe该进程是允许多个运行并存的,且可以通过手工设置来决定并存数量。由于多个运行并存,因而当该进程占用CPU利用率达到手工设置的饱和数值时(如70%),执行操作为"关闭"即可,不会对提供WEB服务有任何影响。

Q : w3wp.exe间歇性占用CPU(处理器)资源100%持高不下,持续时间几分钟至是几分钟不等,其原因? A : ·设置在IIS中的WEB站点其程序问题,如执行大量查询操作等;       ·WEB站点提供的系统服务相关,如提供文件上传服务从而占用过多资源等;

三. IIS6.0应用程序池

IIS 6.0 提供应用程序池以支持灵活且高性能的Web 应用程序设计。应用程序池是将一个或多个应用程序连接到一组或多组工作进程的 IIS 6.0 配置选项。在CDC 情境中,将具有相似可用性和性能要求的 Web 应用程序组合到一起以形成应用程序池。这种分组可提供更高层次的资源分配精细度,对请求队列设置阀值并实现最佳的性能。将一些有严格性能要求的应用程序配置成 Web 园的一部分。通过设置处理器亲合为带有 CPU 密集型任务的应用程序分配专用处理器组,以免和其它应用程序争用 CPU 周期。

IIS6.0不以IIS5.0隔离模式<Inetinfo.exe(对于进程内应用程序)或 DLLhost.exe(对于进程外应用程序)>工作的时候,W3wp.exe(多工作进程)将在访问www服务时候启动。

通过IIS6.0新增的“应用程序池”可以对此进行调度,根据调换Web园的数量可以限定该池的工作进程数量,经过测试同属于一个池中的程序,服务器将在访问每个虚拟目录或站点时启动一个W3wp.exe进程。直至达到设置的Web园最大数量。根据站点的命中频率我们设置回收进程的时间,默认为20分钟,根据访问量具体定。在站点内存耗费过大时及时回收内存,可以有效的避免溢出。

四. 什么是Web园

在您创建应用程序池时,就会通知 IIS 6 创建一个工作进程,以传送指派给该应用程序池的 Web 站点、文件和文件夹的内容。您可以将应用程序池配置为启动多个,而非一个工作进程,这样可以提高可扩展性。这个功能的名为 Web 园,是小型的“Web 农场”。您无需使用多台计算机来传送相同的内容(Web 农场),而是可以使用一台计算机中的多个进程来传送相同的内容。          在将 IIS 6 应用程序配置为 Web 园时,您只需在“应用程序池属性”的“性能”选项卡的“最大工作进程数”框中,设置一个大于 1 的工作进程数。如果这个值大于 1,每个请求都将启动一个新的工作进程实例,可启动的最多进程数为您所指定的最大工作进程数。后续的请求将以循环的方式发送至工作进程。

Web 园在您的应用程序资源有限的情况下非常有用。例如,如果您到数据库的连接很慢,那么您可以使用多个工作进程来增加用户吞吐量,从而增加到数据库的连接数。          尽管在有些情况下使用 Web 园的用处非常大,但是要注意,每个工作进程的会话信息都是唯一的。由于请求以循环的方式路由到应用程序池工作进程,因此 Web 园对于会话信息存储在进程中的应用程序作用可能不大。在少数情况下,让多个工作进程运行同一个应用程序会造成资源竞争。例如,如果所有工作进程都试图将信息记录到日志文件中,或是使用那些不是专用于多个并发访问的资源,那么可能出现资源竞争问题。

关于w3wp.exe相关推荐

  1. win2003系统+IIS6下,经常出现w3wp.exe和sqlserver.exe的内存占用居高不下

    在IIS6下,经常出现w3wp.exe,sqlserver.exe的内存占用不能及时释放,从而导致服务器响应速度很慢. 由于内存释放不及时严重影响到服务器的正常运营,建议采用以下配置,但请考虑自身服务 ...

  2. w3wp.exe内存占用过高(网站打不开,应用程序池回收就正常)

    服务器cpu,内存正常, 部分网站打不开,应用程序池回收就正常,如何解决? 服务器cpu,内存正常, 部分网站打不开,应用程序池回收就正常,如何解决? 提问: 服务器\IIS和ASP问题请问下各位`` ...

  3. 进程在与Windows Process Activation Service通信时出现严重错误 w3wp.exe错误

    标题是两个问题  出现时间是一样的  先有进程在与Windows Process Activation Service通信时出现严重错误  然后事件查看器里就会出现w3wp.exe错误 问题的后果就是 ...

  4. iis占用服务器内存,W3wp.exe 进程占用内存高消耗CPU近100%导致网站反应速度缓慢的解决方案...

    如何降低W3WP.EXE占用的内存和CPU?结合网上的诸多建议,主要的解决办法是: a.在IIS中对每个网站进行单独的应用程序池配置: b.合理的配置你的应用程序池: c.找出具体网站站点的程序问题. ...

  5. W3wp.exe占用CPU及内存资源

    问题背景 最近使用一款系统,但是经常出现卡顿或者用户账号登录不了系统.后来将问题定位在了服务器中的"w3wp.exe"这个进程.在我们的用户对系统进行查询.修改等操作后,该进程占用 ...

  6. 解决服务器上 w3wp.exe 和 sqlservr.exe 的内存占用率居高不下的方案

    SQL Server是如何使用内存 最大的开销一般是用于数据缓存,如果内存足够,它会把用过的数据和觉得你会用到的数据统统扔到内存中,直到内存不足的时候,才把命中率低的数据给清掉.所以一般我们在看sta ...

  7. mysql-nt.exe w3wp.exe cpu 100%_认识w3wp.exe进程,从根本上解决占用资源较大问题

    认识w3wp.exe进程,从根本上解决占用资源较大问题 发布时间:2019-12-14 16:19 来源:互联网 当前栏目:web技术类 在windows server 2003中对于每一个web应用 ...

  8. mysql-nt.exe w3wp.exe cpu 100%_w3wp.exe(IIS ) CPU 占用 100% 的常见原因及解决办法

    对于IIS管理员来说,经常会碰到Web服务器CPU占用100%的情况,以下是个人的日常工作总结和一些解决办法,主要用来剖析w3wp.exe(IIS )占用CPU 100%的一些原因 和解决方案,希望能 ...

  9. w3wp oracle,w3wp.exe占用CPU超过50%的处理

    w3wp.exe占用CPU超过50%的处理 1.查看CPU占用高的进程:任务管理器 C:\Documents and Settings\Administrator>iisapp W3WP.exe ...

最新文章

  1. php 判断是否有相同的ID,如果有就修改数据库字段,没有就插入数据库字段
  2. 这所211大学,实力强悍,适合“踩线生”报考!
  3. 回顾丨2017年人工智能带火了哪些词
  4. 在Linux下和Windows下遍历目录的方法及如何达成一致性操作
  5. hibernate 向数据库里设置了默认值的字段添加数据为null时失效的问题
  6. 宝塔面板php日志在哪里,宝塔面板怎么查看网站日志?
  7. 再转弯曲评论上的一篇关于SOC的文章
  8. 调试 不弹出 小米_时隔六年,小米NFC碰碰贴复活,碰一下自动亮灯、联网、投屏...
  9. 2017.8.11 亚瑟王 失败总结
  10. Python – GitHub CentOS
  11. nginx 设置端口访问网站
  12. Queue和BlockingQueue的使用以及使用BlockingQueue实现生产者-消费者
  13. 使用U盘安装Windows操作系统教程
  14. 局域网计算机文件共享推理,行测技巧:类比推理的“第二规律”
  15. Intellij IDEA 设置字体加粗
  16. Excel创建堆积柱形混合折线图
  17. cpp封装dll和so,cpp调用so
  18. JVM虚拟机安装苹果系统
  19. 五猴分桃python_猴子分桃问题 | 学步园
  20. 毕业设计--20200301--domoticz的智能家居设备---esp8266(micropython)+MQTT 做一个可控开关

热门文章

  1. NLayerAppV3--.net Core2实现的DDD分层架构
  2. 在京东上买的手机然后申请退货的经历
  3. 【10】jQuery学习——入门jQuery选择器之表单选择器
  4. 创建windows服务,定时监控网站应用程序池
  5. HDU-4282 A very hard mathematic problem 技巧枚举+二分
  6. Java学习笔记9-2——JavaWeb
  7. linux vma,内存管理 – Linux内核API find_vma
  8. mysql参数化查询为什么可以实现_为什么参数化SQL查询可以防止SQL注入?
  9. 自动打包linux,Linux环境下Springboot自动打包发布功能
  10. memset和fill