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

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.2.21\bin\httpd -l
Complied in 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 150
MaxRequestsPerChild 0
</IfModule>

  

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

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

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

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

Apache 性能优化的更多相关文章

  1. Apache性能优化、超时设置,linux 重启apache

    在httpd.conf中去掉Include conf/extra/httpd-default.conf前的#以使httpd-default.php生效.其中调节以下参数Timeout 15 (连接超时 ...

  2. Apache性能优化总结

    1.介绍 首先要了解Apache采用的MPM(Multi -Processing Modules,多道处理模块),MPM是Apache的核心,它的作用是管理网络连接.调度请求.Apache2.0中MP ...

  3. 25个Apache性能优化技巧推荐

    25个Apache性能优化技巧推荐 Apache至今仍处于web服务器领域的霸主,无人撼动,没有开发者不知道.本篇文章介绍25个Apache性能优化的技巧,如果你能理解并掌握,将让你的Apache性能 ...

  4. apache性能优化

    perfork进程数 http://sookk8.blog.51cto.com/455855/275759/ mod_cache 磁盘缓存 http://www.cnblogs.com/fnng/ar ...

  5. apache性能配置优化

    最近在进行apache性能优化设置.在修改apache配置文件之前需要备份原有的配置文件夹conf,这是网站架设的好习惯.以下的apache配置调优均是在red had的环境下进行的. httpd相关 ...

  6. Apache 性能配置优化

    前言 最近在进行apache性能优化设置.在修改apache配置)文件之前需要备份原有的配置文件夹conf,这是网站架设的好习惯.以下的apache配置调优均是在red had的环境下进行的. htt ...

  7. linux apache服务器优化建议整理(很实用)

    转载:http://www.cnblogs.com/zhongbin/archive/2013/06/11/3131865.html 1.apache服务器的time_wait过多 fin_wait1 ...

  8. apache kafka系列之性能优化架构分析

    apache kafka中国社区QQ群:162272557 Apache kafka性能优化架构分析 应用程序优化:数据压缩 watermark/2/text/aHR0cDovL2Jsb2cuY3Nk ...

  9. Tomcat 8.5 基于 Apache Portable Runtime(APR)库性能优化

    Tomcat可以使用Apache Portable Runtime来提供卓越的性能及可扩展性,更好地与本地服务器技术的集成.Apache Portable Runtime是一个高度可移植的库,位于Ap ...

随机推荐

  1. Objective-C determine data network type of the iOS device

    Im on an application that receive data from server, the problem is when user connect to cellular dat ...

  2. 使用java理解程序逻辑 第三章 选择结构一

    if 选择结构: if(条件){       代码块  //条件成立后要执行的代码.可以是一条语句,也可以是一组语句 } 可以处理单一或组合条件的情况. if-else 选择结构: if(条件){   ...

  3. Java 集合源码解析(1):Iterator

    Java, Android 开发也有段时间了,当初为了早点学 Android,Java 匆匆了解个大概就结束了,基础不够扎实. 虽然集合框架经常用,但是一直没有仔细看看原理,仅止于会用,不知道为什么要 ...

  4. 使用innerHTML生成的script节点不会发出请求与执行text属性

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  5. (基础篇) php中0与空 Null false的区别

    <?php $test=0; if($test==''){ echo '<br />在php中,0即为空'; //被输出 } if($test===''){ echo '<br ...

  6. 38. Count and Say

    The count-and-say sequence is the sequence of integers beginning as follows: 1, 11, 21, 1211, 111221 ...

  7. xmind的第四天笔记

  8. 使用isInEditMode解决可视化编辑器无法识别自定义控件的问题

    如果在自定义控件的构造函数或者其他绘制相关地方使用系统依赖的代码, 会导致可视化编辑器无法报错并提示:Use View.isInEditMode() in your custom views to s ...

  9. 监听turtlesim仿真器,发送数据到实际的机器人--20

    摘要: 原创博客:转载请表明出处:http://www.cnblogs.com/zxouxuewei/ 1.0.本教程教你写实际的ros程序,控制自己的机器人.采用的是PC端的ubuntu+ros.终 ...

  10. Windows编程基础

    主要内容:介绍Windows编程的一些基础概念 1.窗口的概念 <1>一个应用程序的窗口通常包括控制菜单框.下拉菜单. 工作区以及最大化按钮.最小化按钮, 还有垂直滚动条.水平滚动条 &l ...