Apache 2.0性能优化(二).doc
上传人:yy****24 上传时间:2024-09-10 格式:DOC 页数:4 大小:35KB 金币:16 举报 版权申诉
预览加载中,请您耐心等待几秒...

Apache 2.0性能优化(二).doc

Apache2.0性能优化(二).doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

16 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

技术成就梦想—Linux工程师—www.LinuxEngineer.cnmail:manager@linuxengineer.cn技术成就梦想—Linux工程师—www.LinuxEngineer.cnmail:manager@linuxengineer.cnApache2.0性能优化(二)调优是一个大主题,涉及面颇广。目前受条件所限,大部分人可能只能从apache本身入手调优。所以本文将主要从apache的配置方面入手来详解apache调优。希望对正在使用apache的朋友有所裨益,有什么问题欢迎交流探讨,大家共同学习共同进步!KeepAlive参数KeepAliveOnMaxKeepAliveRequests0KeepAliveTimeout15使用keepalive可以在单一连接时进行多个请求。Keepalivetimeout每个连接保持的时间MaxKeepAliveRequests这个我就不解释了,意思是最大保持的连接数,0为不限制。我在来形象的描述一下,KeepAlive中的连接就像是餐厅中的女服务员,而KeepAliveTimeout就是服务员的忍耐时间,我和几个哥们往店里一坐然后开始唠嗑,根本不理她,她不可能一直站在那吧?所以忍耐度一够她就撤了。这个数目设多少合适呢?因服务器而异,就像五星级的餐厅和街边小餐馆的区别。选择多处理模块(Multi-ProcessingModule,MPM)这玩意主要负责管理网络连接、调度请求。理解成不同的社会制度就好,万恶的封建主义和万恶的资本主义,很难说的清谁好谁坏,所以针对不同情况选择就好。每次只能有一种MPM被应用,必须使用--with-mpm=(worker|prefork|event)静态编译。Apache默认安装是使用一个进程的传统模型称为prefork。较新的线程化模型称为worker,它使用多个进程,每个进程又有多个线程,这样就能以较低的开销获得更好的性能。最新的eventMPM是一种实验性的模型,为不同的任务使用单独的线程池。要确定当前使用的是哪种MPM,可执行httpd-l。MPM中的MinSpareServers和MaxSpareServersMinSpareServers指令设置空闲子进程的最小数量。所谓空闲子进程是指没有正在处理请求的子进程。如果当前空闲子进程数少于MinSpareServers,那么Apache将以最大每秒一个的速度产生新的子进程。只有在非常繁忙机器上才需要调整这个参数。将此参数设的太大通常是一个坏主意。MaxSpareServers指令设置空闲子进程的最大数量。所谓空闲子进程是指没有正在处理请求的子进程。如果当前有超过MaxSpareServers数量的空闲子进程,那么父进程将杀死多余的子进程。只有在非常繁忙机器上才需要调整这个参数。将此参数设的太大通常是一个坏主意。如果你将该指令的值设置为比MinSpareServers小,Apache将会自动将其修改成"MinSpareServers+1"。以上说明摘自apache中文手册。根据我个人的理解这个进程就像是apache大酒店的服务小姐,MinSpareServers设置的就是小姐的基本富裕人数,服务员带着我去开房了这时候如果有其他人来也需要有人照顾的对吧?这个富裕人数就是应对这种状况的。MaxSpareServers就是最大空闲人数了,什么意思?你一个三星apache大酒店搞2万个服务员开的下去吗?很显然除非你有门路,不然是没有那么多人的,服务员住哪(硬件)都是个问题。哈哈,扯远了。所以设定这个值一定要结合自身情况,当客流量大的时候数值也适当增大。可是流量大的时候也就是个别时段,所以用crontab搞一下就好prefork模式中的调节默认配置如下StartServers8MinSpareServers5MaxSpareServers20ServerLimit256MaxClients256MaxRequestsPerChild4000几乎所有的文档都会罗列出上面的数据。StartServers的值是只要启动服务就会立即启动8个进程,并尽力保持5到20个空闲服务器运行。进程数的硬性限制由MaxClients指定。尽管一个进程能够处理许多相继的请求,Apache还是会取消连接数超过4,000以后的进程,这降低了内存泄漏的风险。Worker模式中的调节默认配置如下StartServers2MaxClients150MinSpareThreads25MaxSpareThreads75ThreadsPerChild25MaxRequestsPerChild0与prefork的调节类似,不同之处只是必须确定使用多少线程和进程。要经过几次尝试和出错之后才能选好要使用的值。最重要的值是Ma