优化Apache,提高并发

标签: 优化 apache 并发 | 发表时间:2014-10-11 02:39 | 作者:hongtoushizi
出处:http://www.iteye.com

Apache 配置:

1. 模拟并发访问
ab -n 100000 -c 1000 -k http://weibo.cnsuning.com/index.php
在其它机器启动测试程序,也可以使用其它性能更强的并发测试工具

2. 检测HTTPD连接数:
watch -n 1 -d “pgrep httpd|wc -l”

3. 确定工作模式 prefork / worker
httpd -l

4. 并发参数设置

# prefork MPM
# StartServers: number of server processes to start
# MinSpareServers: minimum number of server processes which are kept spare
# MaxSpareServers: maximum number of server processes which are kept spare
# ServerLimit: maximum value for MaxClients for the lifetime of the server
# MaxClients: maximum number of server processes allowed to start
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule prefork.c>
StartServers       8
MinSpareServers    32
MaxSpareServers   64
ServerLimit      10240
MaxClients       10000
MaxRequestsPerChild  10000
</IfModule>

prefork的工作原理是,控制进程在最初建立”StartServers”个子进程后,
为了满足”MinSpareServers”设置的需要创建一个进程,
等待一秒钟,继续创建两个,再等待一秒钟,继续创建四个……如此按指数级增加创建的进程数,最多达到每秒32个,
直到满足 MinSpareServers设置的值为止。
这就是预派生(prefork)的由来。这种模式可以不必在请求到来时再产生新的进程,从而减小了系统开销以增加性能。

MaxSpareServers设置了最大的空闲进程数,如果空闲进程数大于这个值,apache会自动kill掉一些多余进程。
这个值不要设得过大,但如果设的值比MinSpareServers小,apache会自动把其调整为MinSpareServers+ 1。
如果站点负载较大,可考虑同时加大MinSpareServers和MaxSpareServers。

MaxRequestsPerChild设置的是每个子进程可处理的请求数。
每个子进程在处理了”MaxRequestsPerChild” 个请求后将自动销毁。
0意味着无限,即子进程永不销毁。虽然缺省设为0可以使每个子进程处理更多的请求,但如果设成非零值也有两点重要的好处:
可防止意外的内存泄漏;在服务器负载下降的时侯会自动减少子进程数。
因此,可根据服务器的负载来调整这个值。但也不能太小,不然系统不断的开启新的apache进程,造成资源浪费。

MaxClients是这些指令中最为重要的一个,设定的是apache可以同时处理的请求,是对apache性能影响最大的参数。
其缺省值 150是远远不够的,如果请求总数已达到这个值(可通过ps -ef|grep http|wc -l来确认),那么后面的请求就要排队,直到某个已处理请求完毕。
这就是系统资源还剩下很多而http访问却很慢的主要原因。

5. 其它参数设置

ServerTokens Prod – 隐藏服务器版本信息,只显示 apache

ServerSignature Off

HostnameLookups Off

Timeout 5 – 请求超时时间

KeepAlive On

KeepAliveTimeout 5

MaxKeepAliveRequests 100

6. 关闭不需要的模块
注释掉加载该模块,及相关配置项

 

转载:http://blog.csdn.net/newjueqi/article/details/7205128



已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [优化 apache 并发] 推荐:

优化Apache,提高并发

- - Web前端 - ITeye博客
在其它机器启动测试程序,也可以使用其它性能更强的并发测试工具. 确定工作模式 prefork / worker. prefork的工作原理是,控制进程在最初建立”StartServers”个子进程后,. 为了满足”MinSpareServers”设置的需要创建一个进程,. 等待一秒钟,继续创建两个,再等待一秒钟,继续创建四个……如此按指数级增加创建的进程数,最多达到每秒32个,.

Apache优化与提供并发数量

- - CSDN博客系统运维推荐文章
我们用lvs做了负载均衡,使用了两台服务器做login的服务,以及二次资源下载服务. 但是在推广过程中,陆续有人反映服务器登录困难. 1、首先我们查看流量日志以及服务器cpu与内存使用情况,发现每隔一段时间流量以及cpu使用情况都会急剧下降一次. 而且两台登录服务器会循环出现连接不上的情况. 查看lvs  message日志    /var/log/message.

apache的配置优化

- - 互联网 - ITeye博客
【apache配置参数备注】.   KeepAlive指的是保持连接活跃,类似于Mysql的永久连接. 换一句话说,如果将KeepAlive设置为On,那么来自同一客户端的请求就不需要再一次连接,避免每次请求都要新建一个连接而加重服务器的负担. 一般情况下,图片较多的网站应该把KeepAlive设为On.

Apache Kylin 性能优化

- - V2EX - 技术
聚合组 Aggregation Groups. Cube Designer 的 Advanced Setting 中可以配置 Aggregation Groups. 理论上 N 维度 Cube 会构建 2^N 个 Cuboid,随着维度的增多,Cuboid 数量会指数增长,存储空间占用增大,构建时间增长.

Google 发布Apache自动优化模块

- 火锅土豆 - Solidot
mod_pagespeed 下载 ,详细介绍".

查看Apache并发请求数及其TCP连接状态

- - 企业架构 - ITeye博客
这两天搭建了一组Apache服务器,每台服务器4G内存,采用的是prefork模式,一开始设置的连接数太少了,需要较长的时间去响应用户的请求,后来修改了一下Apache 2.0.59的配置文件httpd.conf:.   查看httpd进程数(即prefork模式下Apache能够处理的并发请求数):.

mod_pagespeed 1.2 发布,Apache网站优化工具

- - 开源中国社区最新新闻
mod_pagespeed是谷歌于2010年底推出Apache服务器自动优化模块,可以对基于Apache的网站的内容进行自动优化以及智能缓存,从而有效提升网页的加载速度,据统计可以提升50%. 谷歌今天发布了mod_pagespeed 1.2版本, 该版本新增了两个功能 canonicalize_javascript_libraries和.

apache 性能优化 如何微调参数提高性能

- - 互联网 - ITeye博客
在前两天的学习中我们知道、了解并掌握了Web Server结合App Server实现单向Https的这样的一个架构. 这个架构是一个非常基础的J2ee工程上线布署时的一种架构. 在前两天的教程中,还讲述了Http服务器、App Server的最基本安全配置(包括单向https的实现), 它只是避免了用户可以通过浏览器侵入我们的Web访问器或者能够通过Web浏览器来查询我们的Web目录结构及其目录内的文件与相关内容,这种入侵我们把它称为:.

Apache Phoenix的Join操作和优化 - CSDN博客

- -
估计Phoenix中支持Joins,对很多使用HBase的朋友来说,还是比较好的. 数据保存到Orders.csv,内容格式为:. 数据保存到Customers.csv,内容格式为:. 数据保存到Items.csv,内容格式为:. Orders.sql文件内容为:. Customers.sql文件内容为:.

tomcat 高并发优化

- - 企业架构 - ITeye博客
maxThreads:tomcat起动的最大线程数,即同时处理的任务个数,默认值为200. minSpareThreads 表示空闲的线程数,据我的理解,类似于连接池. acceptCount:当tomcat起动的线程数达到最大时,接受排队的请求个数,默认值为100.    另外,有时候,还需要调整jvm的启动参数.