Apache 性能优化
Apache 性能优化
梦之江 发表于3年前
Apache 性能优化
  • 发表于 3年前
  • 阅读 103
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

摘要: Apache 性能优化

有一个升级服务器,这几天一直访问的比较慢。导致部分用户升级不了。看了一下服务器的负载,发现

CPU和内存占用的都不是很高,可能是Apache配置不当造成的,一番搜索,找到了MPM的配置,提速很明显哦 !

 

Apache 的 MPM(Multi -Processing Modules,多道处理模块),经过适当的配置,可以提高服务器的负载能力。

不过,Linux和Windows版本的Apache ,MPM不尽相同,感觉Linux更强大些,可以同时开好几个进程进行Apache的响应。

我机子上的是Wamp环境,在httpd.conf中有这样一段:

# Server-pool management (MPM specific)
# Include conf/extra/httpd-mpm.conf


注释掉,在httpd-mpm.conf中,会出现好几种类型的配置,要根据自己的具体环境配置相应的文件。

通过  httpd -l 可以,查看自己的Apache部署的是哪个模块。

复制代码

D:\wamp\bin\apache\Apache2.\bin\httpd -l
  Complied  modules:
    core.c
    mod_win32.c
    mpm_winnt.c
    http_core.c
    mod_so.c

复制代码


看到里面有mpm_winnt.c ,我们就在httpd-mpm.conf的<IfModule mpm_winnt_module>进行配置

<IfModule mpm_winnt_module>
    ThreadsPerChild      
    MaxRequestsPerChild    
</IfModule>


其中,ThreadsPerChild 是指一个进程最多拥有的线程数(Windows版本,貌似不可以开启多个进程),一般100-500就可以,

根据服务器的具体性能来决定。MaxRequestsPerChild,是指一个线程最多可以接受的连接数,默认是0,就是不限制的意思,

但是网上有文章说,0会导致内存泄露。所以,可以根据实际情况,配置一个比较大的值。我估计Apache会在几个线程之间进

行轮询,找到负载最轻的一个线程来接受新的连接。

 

另附: Apache 官方MPM说明http://httpd.apache.org/docs/2.2/zh-cn/mpm.html

转自http://www.cnblogs.com/wpjsolo/archive/2012/04/03/2430763.html

共有 人打赏支持
粉丝 0
博文 20
码字总数 16959
×
梦之江
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: