apache的httpd.exe占用内存的解决方法

2019-12-25 10:02:44 GDIDC

版本:apache2.4

首先查看apache使用的是哪种MPM模块

linux 直接在服务器上输入 httpd -V (大写的V)  

windows下需要在cmd =>apache的bin目录

广东IDC网

一般linux默认使用的是prefork ,windows的是winnt。

然后开启MPM模块,在httpd.conf文件中全文检索 mpm 

广东IDC网

启用把 # 号去掉就ok

找到MPM模块的配置文件,windows的是在Apache的安装目录下 conf/extra/httpd-mpm.conf    

linux的用命令自己找  find / -name 'httpd-mpm.conf'

在该文件下查找相对应的模块配置 mpm__你的MPM模块名,比如windows下的是mpm_winnt

广东IDC网

ThreadsPerChild:每个子进程的最大并发线程数

MaxConnectionsPerChild:每个子进程允许处理的请求总数,超过该值后会将子进程结束,然后它会自己判断是否还要创建新的子进程, 为0表示不限制请求总数,子进程是不会结束的 (会占用大量内存); 如要设置一个非0值,需要根据服务器内存的大小来设置

设置好了之后重启Apache,运行你的程序,你会发现已经OK了