Apache 优化配置10条建议
之前VPS使用的是默认的Apache配置,感觉还行,不过随着博客的人流量上升,显然这种配置无法满足需求了;下面是Apache官方手册中给出的几条优化配置建议,笔者将其整理出来,对Apache服务器的运行效率是有帮助的。
- 控制MaxClients的设置,以避免服务器产生太多的子进程而发生交换。
进程间的数据交换会占用很大内存,数据交换产生的滞后使用户总感觉”不够快”,所以用户就可能去按”停止”和”刷新”,从而带来更大的负载。一般建议小网站将MaxClients设置为12~24。 - 选择更好的硬件,CPU、内存、硬盘等等
这句很鸡肋啦,如果有更多的银子,谁不愿意换更好的呢?^_^ - 定期更新操作系统,打上系统补丁;如果你的操作系统支持sendfile()系统调用,则务必安装带有此功能的版本或补丁
在支持sendfile的系统中,Apache2可以更快地发送静态内容而且占用较少的CPU时间。 - HostnameLookups设置为off
尽量较少DNS查询的次数。如果你使用了任何”Allow from domain”或”Deny from domain”指令(也就是domain使用的是主机名而不是IP地址),则代价是要进行两次DNS查询(一次正向和一次反向,以确认没有作假)。所以,为了得到最高的性能,应该避免使用这些指令(不用域名而用IP地址也是可以的)。 - 为Directory加上FollowSymLinks
如果网站空间中没有使用 Options FollowSymLinks ,Apache就必须执行额外的系统调用以验证符号连接。例如:在请求”/index.html”时,Apache将对”/www”、”/www/htdocs”、”/www/htdocs/index.html”执行lstat()调用。而且lstat()的执行结果不被缓存,因此对每一个请求都要执行一次。 - 将AllowOverride设置为None
对于使用虚拟主机的朋友可能会觉得不方便,这样设置将会使.htaccess中的设置失效,如果实在需要,并且在有条件的情况下,请在conf配置文件中直接写入rewrite规则 - 禁用内容协商
尽管在实践中,内容协商的好处大于性能的损失,如果你很在意那一点点的性能损失,则可以禁止使用内容协商。但是仍然有个方法可以提高服务器的速度,就是不要使用通配符。 - MaxRequestsPerChild设置为非0以防止内存泄漏
MaxRequestsPerChild用于控制Apache子进程在何时销毁,默认为0,代表永不销毁子进程,这可能会存在内存泄漏的风险,建议设置为10000 - KeepAlive与KeepAliveTimeOut
如果你使用的使mpm_prefork模式(Apache默认安装),那么建议你将KeepAlive设置为off;因为,开启keepalive会为每个客户端建立一个连接,prefork不会创建线程,估计100个用户同时访问你的网站,Apache就会挂了~,如果你实在想开启,那么请将KeepAliveTimeOut 时间设置更短些,例如5,默认是60秒呢 - 不要静态编译Apache
尽管会有很多人和你说静态编译的好处,同时,你自己也想自己编译一把,以体验乐趣~但是,将模块已静态方式编译进Apache绝对不是一个好选择,尤其是对于缺银子的站长们来说,一个配置不当,Apache会在启动时就占用光你所有的内存,最后拖垮服务器~
评论
人好哇! 撰写:
我一直用Apache的Worker模式,所以负载高一点也无所谓。不过MaxRequestsPerChild设置为非0是很必要的,避免泄露内存引发问题,KeepAlive也是一个比较需要权衡的参数。博主所说的都很对!
freemouse 撰写:
Worker模式好处很多,不过,对于小流量的网站,无需太多关心啦。
摘自:http://www.cnphp.info/10-tips-for-optimize-Apache-options.html
Apache 优化配置10条建议的更多相关文章
- <转>“人脉投资”的10条建议
谁都知道人脉很重要,所以有些人非常勤奋的“做人脉”,他们往往会这样做—— 积极的参与各类线下活动,逢人就换名片.加微信. 见到名人或者重要人物必合影,而且他们还会掏出手机来给你看. 逢年过节,给所有他 ...
- 提高Axure设计效率的10条建议
http://www.woshipm.com/ucd/92153.html Axure 是创建软件原型的快速有力的工具.上手很容易,但是,其中存在一个危险.这款软件是如此的直观以至于很多用户可以在没有 ...
- 给备战NOIP 2014 的战友们的10条建议
应老胡要求,要写10条建议= = begin 1. 注意文件关联 比如 halt 前要close(input); close(output); 还有就是一定要打这两句话= = 2. 快排,大家都懂得. ...
- 提高Axure设计效率的10条建议 (转)
Axure 是创建软件原型的快速有力的工具.上手很容易,但是,其中存在一个危险.这款软件是如此的直观以至于很多用户可以在没有接受过任何正式培训的情况下进行使用.他们可能不知道的是他们可能没有以恰当的方 ...
- 10条建议帮助你创建更好的jQuery插件
本文总结了帮助你创建更好jQuery插件的10条建议.分享给大家供大家参考.具体说明如下: 在开发过很多 jQuery 插件以后,我慢慢的摸索出了一套开发jQuery插件比较标准的结构和模式.这样我就 ...
- 如何提高Axure设计的效率 提高Axure设计效率的10条建议
如何更有效率的使用axure,这是新手需要掌握的技能.本文作者从实际经验中归纳出来的十条建议十分值得学习,转载分享给大家: Axure 是创建软件原型的快速有力的工具.上手很容易,但是,其中存在一个危 ...
- 将Web应用性能提高十倍的10条建议
导读 提高 web 应用的性能从来没有比现在更重要过.网络经济的比重一直在增长:全球经济超过 5% 的价值是在因特网上产生的(数据参见下面的资料).这个时刻在线的超连接世界意味着用户对其的期望值也处于 ...
- 将 Web 应用性能提高十倍的10条建议
提高 web 应用的性能从来没有比现在更重要过.网络经济的比重一直在增长:全球经济超过 5% 的价值是在因特网上产生的(数据参见下面的资料).这个时刻在线的超连接世界意味着用户对其的期望值也处于历史上 ...
- Apache优化配置:修改最大并发连接数
此文摘自: http://www.365mini.com/page/apache-concurrency-configuration.htm Apache查看连接数和限制当前的连接数 : http:/ ...
随机推荐
- Linux 入门记录:一、命令行 Bash 的基本操作
为了以后长期的线上测试和服务器的性能考量,要用 Linux 服务器了.昨晚装了个 CentOS 6.9,今天开始学学 Linux 基础,扫扫盲.ok,小本本记 ing... 一.Shell简介 She ...
- python基础===Sublime Text 3 快捷键
选择类 Ctrl+D 选中光标所占的文本,继续操作则会选中下一个相同的文本. Alt+F3 选中文本按下快捷键,即可一次性选择全部的相同文本进行同时编辑.举个栗子:快速选中并更改所有相同的变量名.函数 ...
- monkey测试===Monkey测试结果分析(系列三)转
Monkey测试结果分析 一. 初步分析方法: Monkey测试出现错误后,一般的差错步骤为以下几步: 1. 找到是monkey里面的哪个地方出错 2. 查看Monkey里面出错前的一些事件动作,并手 ...
- C 基础框架开发
引言 有的人真的是天命所归 延安时期炸弹 投到他院子都 没炸. 有些事无法改变 是命! 我们也快'老'了, 常回家看看. 前言 扯淡结束了,今天分享的可能有点多,都很简单,但是糅合在一起就是有点复杂. ...
- 初学jmeter
jmeter安装的前提需要有jdk环境,下载安装好jdk环境后记得要设置好环境变量. 配置环境变量:右击“我的电脑”-->"高级"-->"环境变量" ...
- java的IO流之字符流
# 原创,转载请留言联系 输出流 FileWriter类 常见的构造方法: FileWriter(String fileName) 根据给定的文件名构造一个 FileWriter 对象.Fil ...
- http通信过程中,Web浏览器与Web服务器之间将完成下列7个步骤
http通信过程中,Web浏览器与Web服务器之间将完成下列7个步骤: (1) 建立TCP连接 在HTTP工作开始之前,Web浏览器首先要通过网络与Web服务器建立连接,该连接是通过TCP来完成 ...
- Guice2.0的变化——第一部分 新的特性(上)
http://superleo.iteye.com/blog/314816 Private Modules PrivateModules 用于创建并不需要对外可见的绑定对象.当然,这样会使得封装变得更 ...
- hdu 1428(很好的一道题,最短路+记忆化搜索)
漫步校园 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submis ...
- FFmpeg软件只是个解码编码软件,如果支持多种格式必须先安装好对应的库,下面就说下我装的库
FFmpeg软件只是个解码编码软件,如果支持多种格式必须先安装好对应的库,下面就说下我装的库:1. 安装faad2 # wget http://downloads.sourceforge.net/fa ...