网站程序w3wp.exe占CPU经常100%,平台windows 2008 R2, asp.net+ sqlserver2008, 都是64位的,主要占用CPU的是泛域名程序池,目前网站日访问量4万.  
机器配置:
Dell powerEdge R400
1U
CPU Qual xeon pro X3220
mem 8G(4*2048) HD 250G试过不少方法,IIS设定试过多种方法,网站使用了大量缓存,加起来有几百兆吧,或许程序哪里存在问题,没找到跟踪方法和工具。有愿意提供帮助请加我QQ:919703565, MSN:[email protected] 万分感激

解决方案 »

  1.   

    sqlserver2008这个数据库就是卡,用sqlserver2000就好了
      

  2.   

    服务器日志多数都是些警告信息,比如搜索引擎访问过期页面,等等,感觉关系不大,
    日志里有几个错误信息,但是和CPU100% 发生的时间都相差很远,基本一个小时以上
    下面是提取的几个错误日志,今天早上发生问题CPU100%的时间段是8:59-11:36 1. 时间9:52
     MSSQLSERVER: 客户端无法重新使用 SPID 为 87 的会话,该会话已被重置用于连接池。失败 ID 为 29。此错误可能是由于先前的操作失败引起的。请查看错误日志,了解紧位于此错误消息之前的失败操作。2. 时间 8:01
    winlogoon: Windows 登录进程意外终止。3. 时间 7:31
    application error:
    错误应用程序 w3wp.exe,版本 7.0.6002.18005,时间戳 0x49e03238,错误模块 ntdll.dll,版本 6.0.6002.18005,时间戳 0x49e0421d,异常代码 0xc0000374,错误偏移量 0x00000000000aef37, 进程 ID 0xb00,应用程序启动时间 0x01cb8db4f7ea7dff。
      

  3.   

    下载安装IIS监控 百度搜索IISWatcher还有http://www.zcnt.com/iis.asp IIS防火墙 
      

  4.   

    IISWatcher 目前不支持win200864位哦
      

  5.   

    检查角色设置
    监控IIS。CPU执行情况
      

  6.   

     你用了应用程序池吗?泛域名程序池出错了?你的数据库是SQL2008的,可能是配置问题吧。 也许是出现死锁了。连接没有及时释放掉??
      

  7.   

    这应该和数据库是2000的还是2008的关系不大,还是看看你的SQL语句,可能存在版本上的语法兼容或者执行效率差异的问题
      

  8.   

    你们公司网站是生成html的,少部分是动态的而已。最好测试一下哪些请求最多,根据这个优化吧。
      

  9.   

    我目前程序池的设定是
    几个主要设置
    回收:
    固定时间间隔:1740
    禁用重叠回收: false
    请求限制:0
    内存限制:0
    限制超时(分钟): 15服务器上还有PHP网站
    有问题的 .net 网站 和PHP网站之间有用户同步
    IIS7 上程序映射配置了fastCGI 还支持PHP
      

  10.   


    目前我去掉了 php5isapi.dll 设置
    *.php
    D:\Server_Core\php\php5isapi.dll
    PHP保留了fastCGImodule
    *.php
    D:\Server_Core\php\php-cgi.exe
    FastCGI-PHP目前CPU100%的情况偶尔有,但100% CPU持续时间很短,一般就是冲一下就下了了。
    但是网站某些页面打开经常出错,刷新页面能能打开,反复刷新这个页面,偶尔还是会这个错。应用程序中的服务器错误
    无法找到表 1行 308 datatable.dt=bll.getlistgforid()行 67: datatable.dt=bll.getdetails(trucksurceid);请问数据库SQL2008 配置需要注意哪些地方呢?
      

  11.   


    这种错误怎么能赖sqlserver 2008?
      

  12.   

    IIS设置资源回收
    用独立的线程池,设置CPU占用率SQL Server 2008也做类似的设置
      

  13.   

    经过分析IISlog发现应是大量非法访问造成的,我封了一些每日几千次访问的IP,现在CPU20%左右
      

  14.   

    CPU100%是没有了,但是现在经常有打开程序页面错误程序中有这样的代码:
    System.Data.DataView contactlist=new System.Data.DataView(table);
    contactlist.Sort = "companyId";
    其中table是个DataTable对象,companyId 是table中的一列。
    现在出现这样的异常信息:
    System.IndexOutOfRangeException: 无法找到列 companyid。
       在 System.Data.DataTable.ParseSortString(String sortString)
       在 System.Data.DataView.CheckSort(String sort)
       在 System.Data.DataView.set_Sort(String value)
       在 BLL.Company.InitAllCompanyLineAndAllCompanyInfoAndAllCityCompany()其中:BLL.Company.InitAllCompanyLineAndAllCompanyInfoAndAllCityCompany()是出现上述两行代码的方法。
    现已知抛出异常的代码是contactlist.Sort = "companyId";问题现象:
    这个错误不是每次都有,是偶尔发生,高手指点下,谢谢!
      

  15.   

    问题最新更新,系统已经升级,但出现新的问题,希望高手指点,感激不尽服务器环境 win2008 64位,sqlserver 2008 64位。出问题的主站是.net, 服务器上PHP+mysql其他网站是OK的。常发生如下错误(.net 网站)w3wp.exe [6340] 中发生未处理的 win32 异常eventlog事件1023,.NET Runtime
    NET Runtime version 2.0.50727.4206 - 事件1000, Application Error
    错误应用程序 w3wp.exe,版本 7.0.6002.18005,时间戳 0x49e03238,错误模块 ntdll.dll,版本 6.0.6002.18327,时间戳 0x4cb74dd3,异常代码 0xc0000374,错误偏移量 0x00000000000aca57, 进程 ID 0x92c,应用程序启动时间 0x01cbe96d30f53290。
    其他有时产生的问题IIS Worker Process Stopped working问题签名:
      问题事件名称: APPCRASH
      应用程序名: w3wp.exe
      应用程序版本: 7.0.6002.18005
      应用程序时间戳: 49e03238
      故障模块名称: StackHash_b36f
      故障模块版本: 6.0.6002.18327
      故障模块时间戳: 4cb74dd3
      异常代码: c0000374
      异常偏移量: 00000000000aca57
      OS 版本: 6.0.6002.2.2.0.274.10
      区域设置 ID: 2052
      其他信息 1: b36f
      其他信息 2: f46355c77b8b9199e7a816989c1295fb
      其他信息 3: b1d5
      其他信息 4: ba9212ca133255d6591ff7408f007e36请有类似经验的人联系我,无经验的不要加我QQ:919703565