客户VPShttpd.exe进程占用100%CPU百度搜了下,很多文章:

在网上也没有能够直接找到比较好的解决方法,后来在一个帖子上看到说,有可能是apache与其他的软件冲突了(参考http://topic.csdn.net/u/20080331/14/9a86ed60-285e-49b9-a11c-f42810dc64a5.html的35楼)。如果是冲突,他会一直写在apache/logs/ 目录下的 error.log  错误日志。结果结果我看到我的error.log文件已经达到将近700M的大小,而且在开着apache的时候还在不断增大。看到里面的错误是“(OS
10038)在一个非套接字上尝试了一个操作。  : Child 8164: Encountered too many errors accepting client connections. Possible causes: dynamic address renewal, or incompatible VPN or firewall software. Try using the Win32DisableAcceptEx directive.”最后终于在网上找到了相应的解决方法(参考http://www.cnblogs.com/mr-jhao/articles/2240699.html)

(1)编辑httpd.conf

Win32DisableAcceptEx ##加入这行

ThreadsPerChild 250

MaxRequestsPerChild 0

重启apache就解决了。

修改后还是不行,任然有错误记录,CPU占用率是降低了,但是还是没有恢复到原来的状态.logs里面还是一直在记录下面的错误报告。

(2)在win命令行cmd下,输入以下命令

netsh winsock reset

原因与winsock有关,这里主要是因为金山毒霸或者升级精灵修改了WINSOCK导致的。由于我电脑上也安装了金山毒霸,而且最近几天也升级过了,应该是同样的问题。

使用此条命令恢复后,重启电脑,这下Apache恢复当原先的良好状态了。

---------------------------------------------------------------------------------------

对于上面加入httpd.conf中内容的解释参考http://topic.csdn.net/u/20080331/14/9a86ed60-285e-49b9-a11c-f42810dc64a5.html的5楼的回答

通常在“Windows任务管理器-进程”中可以看到两个httpd.exe进程,一个是父进程、一个是子进程,父进程接到访问请求后,将请求交由子进程处理。

        MaxRequestsPerChild这个指令设定一个独立的子进程将能处理的请求数量。在处理“MaxRequestsPerChild 数字”个请求之后,子进程将会被父进程终止,这时候子进程占用的内存就会释放,如果再有访问请求,父进程会重新产生子进程进行处理。

       如果MaxRequestsPerChild缺省设为0(无限)或较大的数字(例如10000以上)可以使每个子进程处理更多的请求,不会因为不断终止、启动子进程降低访问效率,但MaxRequestsPerChild设置为0时,如果占用了200~300M内存,即使负载下来时占用的内存也不会减少。内存较大的服务器可以设置为0或较大的数字。内存较小的服务器不妨设置成30、50、100,以防内存溢出。

問題:Apache 的httpd.exe進程CPU使用率50%, 無法運行PHP,甚至HTML也無法訪問!

解決辦法一:

可能是安裝了某些程序修改了Winsock,使用netsh winsock reset 命令修複Winsock重啓計算機即可!

(我是用方法一解決了httpd.exe進程超高,PHP頁面打不開問題)

解決辦法二:

在httpd.conf文件中添加 Win32DisableAcceptEx 標記,如下:

<IfModule mpm_winnt.c\>

ThreadsPerChild 1000

MaxRequestsPerChild 10000

Win32DisableAcceptEx

</IfModule\>

解決辦法三:

1、網上鄰居->本地連接->屬性->internet協議(TCP/IP)->屬性->高級->wins標簽->去掉啓用LMhosts查詢前的勾.
2、控制面版->windows防火牆->高級標簽->本地連接設置->服務的標簽裏勾選安全Web服務器(HTTPS)。

3、然後重啓Apache

三種辦法可能有些不能解決問題,所以可以壹個壹個試

————————————————————————————————————————————————————————

我终于找到原因了

早的时候 我发现新装的系统和配置环境 所以排除病毒

但是10分钟就被httpd.exe 的cpu占用光 我发现只要将这个进程去掉 就能恢复正常 可是10分钟后又让apache瘫痪了,所以我相信一定是配置的问题

在网上都没有确切的说法和解决,后来研究httpd.conf 才知道问题

在httpd.conf 中增加 Win32DisableAcceptEx

然后更改ThreadsPerChild 的值为150 默认是250 如果你的服务器或vps内存超过2G 那么就不用设置

为什么要修改成150呢,我发现增加Win32DisableAcceptEx后内存占用就一直在上升,

详细原理 大家在百度中搜索 ThreadsPerChild。

httpd.exe占用100%CPU的更多相关文章

  1. neutron之neutron_openvswitch_agent占用100%CPU资源问题

    基于kolla-ansible部署的queens版本,基于docker stats查看openstack的资源占用,发现neutron_openvswitch_agent一直占用100%CPU资源,这 ...

  2. vs2008 启动IE浏览器 出现DW20.exe占用大量cpu 服务器iis 异常调试

    DW20.exe占用大量cpu 服务器iis运行出现异常想查一下故障原因,发现有好几个DW20.exe进程,每个占用20%左右的cpu,在任务管理器中将其终止后,它又自动运行起来了 查了一下DW20. ...

  3. NET VBCSCompiler.exe占用100%,造成项目卡顿的的解决方法

    1)服务器环境 最低配 的window server 2008 r2, 配置低容易发现问题‘ 2)事件描述 :项目打开缓慢,查询列表卡顿 3)问题分析:排除代码问题, ->打开服务器任务管理器 ...

  4. VS Code 启动占用100%Cpu问题解决办法

    打开VS Code之后,点击文件->首选项->设置 search.followSymlinks

  5. w3wp.exe(IIS ) CPU 占用 100% 的常见原因及解决办法

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

  6. Apache服务器httpd.exe进程占用cpu超过50%的解决方法

    httpd.exe进程占用cpu超过50%,关闭掉Apache服务,cpu应用率立刻下降到0.  重新启动Apache又出现占用cpu高的情况.  原因是:httpd.exe和防火墙配置有冲突. 解决 ...

  7. magento 由于Httpd进程增多,导致CPU占用100%问题

    由于Httpd进程增多,导致CPU占用100%问题 magento for version 2.2.3 前些天一直导致CPU无法控制的增多问题. 根据报错我设置了如下内容: [Mysql]mysql. ...

  8. w3wp.exe(IIS ) CPU 占用 100% 的常见原因

    引起 w3wp.exe(IIS ) Cpu 占用 100% 的常见原因如下: 1. Web 访问量大,从而服务器压力大而引起的 2. 动态页面(.aspx)的程序逻辑复杂程度 3. 页面程序中有死循环 ...

  9. 服务器php-cgi.exe进程过多,导致CPU占用100%的解决方法

    再使用iis服务器中经常会出现php-cgi.exe进程过多,导致CPU占用100%,最终造成网站运行过慢甚至卡死的情况,重启iis会好一会,过一段时间久出现这种情况,为什么会出现这种情况呢,应该怎么 ...

随机推荐

  1. codeforces 462C Appleman and Toastman 解题报告

    题目链接:http://codeforces.com/problemset/problem/461/A 题目意思:给出一群由 n 个数组成的集合你,依次循环执行两种操作: (1)每次Toastman得 ...

  2. cookie(点心的意思)服务器给客户端的点心

    他是用户访问web服务器时,服务器在用户硬盘上存放的信息,好像是服务器给客户端的“点心”.比如:是否记录用户名密码.其中,A服务器不允许访问B服务器存在客户端的cookie 一个cookie包含一对k ...

  3. C#入门---2、C#装备知识(C#创建桌面程序的时候创建的是什么应用程序)

    C#入门---2.C#装备知识(C#创建桌面程序的时候创建的是什么应用程序) 一.总结 一句话总结: WPF应用程序:来替代 WindowsFroms 来创建桌面应用程序 1.什么是控制台程序 Con ...

  4. DB2删除表分区

    近日,由于部门数据库读库空间过小,提出删除掉两个月之前日志表的分区(数据库分区是按时间月分区),记述如下: 上网搜索资料发现删除表分区大概分这么几步: 1.查询需要删除掉的分区: select t.D ...

  5. 在SQL SERVER 2008中通过已有的数据库生成建库脚本

  6. 在IAR(EWARM)中移植STM32固件库

    一.移植环境说明 (1).win10系统 (2).IAR(EWARM)7.7 (3).STM32标准固件库3.5.0 http://www.st.com/content/st_com/en/produ ...

  7. ZOJ3496 Assignment

    传送门 这题也是真恶心-- 题目大意是俩公司要运货,每条路有容量上限.然后B公司手里有p个--(技能点?)如果在一条路上放了x个技能点,这条路经过了y个货物,那么B公司就会收x*y的钱.现在要求的是, ...

  8. Dynamic Gcd

    树链剖分+差分 直接区间加显然是不行的,由于gcd(a,b,c)=gcd(a,a-b,b-c),那么我们对这些数差分,然后就变成单点修改.原本以为这道题很简单,没想到这么麻烦,就膜了发代码. 首先我们 ...

  9. 【旧文章搬运】加载PE文件时IAT的填充时机

    原文发表于百度空间,2011-06-20========================================================================== 大致过程如 ...

  10. Android开发---开发文档翻译

    2014.11.24 1:ClipData类:用于表示剪切的数据,此剪切的数据可以是复杂类型,包括一个或多个条目实例 (1)基础知识 >公共类:public class >嵌套类:Clip ...