apache配置优化
最近参加了很多面试,多多少少有点小感悟,可以说观念转变了不少,特别是对于作为一个开发人员的定位,原来只是认为开发人员就只需要写好代码就行了,所以只需要有数据结构,算法,设计模式,重构方面的知识就行了。但是经过多次的面试,认识到网站的维护和优化也是开发人员的一个必要的素质。几乎所有的面试官都会问到一个问题,那就是如何优化一个网站,这个问题涉及到很多方面,其实面试官就是想考察你对常见的服务器,数据库的知识是否熟悉。
apache的配置优化可以从以下几个方面来考虑:
一 . 内存
要让服务器运行的足够快,重点是要确保有足够的内存。方法是测定运行Apache进程平均所需的内存容量。将此数目乘上最大负荷量。
如果不管什么原因都无法替服务器加入更多的内存,可以用相同的技术推算出在任何时间能够服务的最大子进程数,并使用MaxClient
指令来限制Apache最多只能处理这么多进程。
二. 调节保持链接(KeepAlive)的设定
http的默认行为是在新的连接上请求文件,这会花费许多时间启动与关闭连接。使用KeepAlive可以在单一连接时进行多个请求,因此
可以减少建立socket连接所需要的时间,而这又会加快客户端在请求网页内容时的加载速度。
KeepAlive On
MaxKeepAliveRequests 0
KeepAliveTimeout 15
三.避免DNS查询
DNS查询会花非常久的时间,因此应该尽量的避免,如果完全无法查询客户端的地址,可能需要几分钟才会让查询过期,而
在这段时间内,执行查询的子进程将无法做其他的事情。方法将HostNameLookups指令始终设为off
四.最佳化符号链接
如果服务器被设定成不遵循符号链接,则Apache必须考虑文件以及目录是不是符号连接。则Apache必须考虑文件以及目录是不是符号链接,
此外,如果启用Option SymLinksIfOwnerMatch, Apache不仅必须检查特定的文件是否是符号链接,还要检查链接本身以及对象的所有权。
虽然这会强制实行某种安全防护原则,但却会花费相当多的时间。并会降低运行速度。如果重点考虑性能,则使用Option FollowSymlinks,即Apache
设置不会检查是不是符号链接。
五.最小化.htaccess文件对性能的影响
只在必要的目录中启用AllowOverride,并告知Apache不要浪费时间在别的位置查找.htacess文件
AllowOverride None
然后以<Diretory>区块启动必要的.htacess文件
六.禁用网页内容协商
如果有可能,请禁用网页内容协商。不过,如果必须使用网络协商,例如有多种语言的网站,则应该使用type-map处理器而非MultiViews指令。
当使用MultiViews送出请求时,Apache都需要取得目录列表。
禁用非必要的网页内容协商。如果真的需要使用网页内容协商,请使用type-map处理器而非MultiViews选项
Option -MultiViews
AddHandler type-map var
七. 最佳化进程的产生
MinSpareServers以及MaxSpareServers指令会控制服务器池的大小,以便永远有子进程等待服务引入的请求。
如果闲置的进程数少于MinSpareServers,则Apache会产生更多的进程达到最少数目;同理,如果空闲进程数比MaxSpareServers多,
Apache则会删除进程直到少于最大数目。
八.调节线程的产生
原理同(七)
apache配置优化的更多相关文章
- apache配置优化 - 解决apache环境下网站访问速度慢的问题(重点参考)
如果apche访问量过大,将会导致页面打开迟缓,下载速度也降低,如果由于经费和环境问题,集群方案没有得以应用.可以通过对Apache2增加模块MPM来进行优化, 这里我选择线程型MPM加以优化: 开 ...
- Apache配置优化之开启KeepAlive
在HTTP 1.0中和Apache服务器的一次连接只能发出一次HTTP请求,而KeepAlive参数支持HTTP 1.1版本的一次连接,多次传输功能,这样就可以在一次连接中发出多个HTTP请求.从而避 ...
- Apache配置优化之开启GZip传输
1.确保apache已经编译的模块里有mod_deflate模块 2.确保apache的配置文件里引入了压缩的模块 3.确保要开启Gzip压缩的虚拟主机配置里有如下配置,并重启apache服务:如果要 ...
- Apache配置优化一(查看当前apache数据)
1.查看当前的运行模块 httpd -l 2.查看httpd进程数 ps -ef | grep httpd | wc -l 3.查看请求80服务的client ip按照连接数排序 netstat -n ...
- apache性能配置优化
最近在进行apache性能优化设置.在修改apache配置文件之前需要备份原有的配置文件夹conf,这是网站架设的好习惯.以下的apache配置调优均是在red had的环境下进行的. httpd相关 ...
- Apache 性能配置优化
前言 最近在进行apache性能优化设置.在修改apache配置)文件之前需要备份原有的配置文件夹conf,这是网站架设的好习惯.以下的apache配置调优均是在red had的环境下进行的. htt ...
- Apache配置压缩优化时报错——undefined symbol: inflateEnd
Apache配置压缩优化时报错——undefined symbol: inflateEnd 环境:CentOS 6.4 软件版本:httpd-2.4.6 apr-1.4.8 apr-util-1.5. ...
- apache的配置优化
[APACHE的工作方式] prefork模式(默认)这个多路处理模块(MPM)实现了一个非线程型的.预派生的web服务器,它的工作方式类似于Apache 1.3.它适合于没有线程安全库,需要避免线程 ...
- Apache性能优化、超时设置,linux 重启apache
在httpd.conf中去掉Include conf/extra/httpd-default.conf前的#以使httpd-default.php生效.其中调节以下参数Timeout 15 (连接超时 ...
随机推荐
- Git命令收集【不断更新中】
git stash 可以用来保存暂时不想提交但又被修改过的文件. git stash pop 用来取出被保存在stash栈中的修改过的所有文件. git stash show 查询哪些文件被存放在了s ...
- linux前景到底怎么样啊?
我就不长篇大论,举四个例子你看看. 1.目下最热最潮最流行的云计算技术的背后是虚拟化和网格技术,而虚拟化和网格技术基本是Linux的天下,目前虚拟化的三大家:Vmware,Xen,Hyper-V中,市 ...
- hibernate4 使用及 新特性
hibernate4.x已经在官网出现一段时间了.下载地址: http://hibernate.org/orm/downloads/ 使用hibernate4所需要的jar包 在lib\require ...
- 1105. Spiral Matrix (25)
This time your job is to fill a sequence of N positive integers into a spiral matrix in non-increasi ...
- Microsoft Azure 全球状态
除了mooncake的中国大陆区域 Azure status http://azure.microsoft.com/en-us/status/?rnd=1#current http://azure.m ...
- 点击图标 标记为星标记事mac中修改默认的apache网站根目录位置
在Mac OS X中可以很方便的通过开启“Web共享”启用Apache服务:设置方法如下: 打开“系统设置偏好(System Preferences)” -> “共享(Sharing)” -&g ...
- iOS常见问题(3)
一.发现不少人在给成员变量初始化的时候,容易进错一个方法去初始化. //注意这个方法只有在内存发生警告的时候才会调用. - (void)didReceiveMemoryWarning { [super ...
- 获取不到app.config里面的数据库连接字符串的解决方法
今天在自己的类库里添加了对app.config文件的数据库连接字符串的引用,但是返回的居然是Null,纳闷了.然后在网上找到了答案原来是我的app.config文件加错了地方,应该加到启动项目里面,而 ...
- 8种方法提升windows 8使用方便-----Win+x 编辑菜单
在windows 8上,你可以同时按下windows键和x键或者右键点击屏幕左下角打开一个菜单名为电源菜单或者快速访问菜单,这个菜单包含快速访问系统的工具,如控制面板,命令提示符,任务管理器,资源管理 ...
- vs2008中使用正则删除空行
起因 今天下了段代码复制到VS2008中想好好学习下,结果发现每隔一行都有一行空白行(如下图),如果只有几行么手动删下就好了,但是这边估计有几百行,我也不知道VS2008有没有什么支持快速删除空白行的 ...