设为首页 收藏本站
查看: 3051|回复: 0

[经验分享] centos7 apache2.4 测试

[复制链接]

尚未签到

发表于 2018-11-19 13:45:45 | 显示全部楼层 |阅读模式
  物理环境
  VPC,64C,8G,SSD
  安装环境
  centos7
  apache2.4
  php5.4
  均使用YUM安装。
  默认配置。
  创建phpinfo
echo "" >> /var/www/html/index.php  使用ab,phpinfo进行测试

  出现socket错误继续进行(-r Don't exit on socket receive errors.)
  使用HTTP KeepAlive功能(-k ,避免apr_pollset_poll: The timeout specified has expired (70007)错误)
  

  使用ulimit -n增加文件打开数量
ulimit -n 65535  第一次测试
ab -r -n 20000 -c 100 'http://127.0.0.1/index.php'  测试期间,新建一个会话,统计httpd进程数。
ps -ef|grep httpd|wc -l
259  最多的时候是259个进程,基本符合默认配置最多256个httpd进程


  

  查看apache2.4 mpm默认配置
cat /etc/httpd/conf.modules.d/00-mpm.conf# Select the MPM module which should be used by uncommenting exactly
# one of the following LoadModule lines:
# prefork MPM: Implements a non-threaded, pre-forking web server
# See: http://httpd.apache.org/docs/2.4/mod/prefork.html
LoadModule mpm_prefork_module modules/mod_mpm_prefork.so
# worker MPM: Multi-Processing Module implementing a hybrid
# multi-threaded multi-process web server
# See: http://httpd.apache.org/docs/2.4/mod/worker.html
#
#LoadModule mpm_worker_module modules/mod_mpm_worker.so
# event MPM: A variant of the worker MPM with the goal of consuming
# threads only for connections with active processing
# See: http://httpd.apache.org/docs/2.4/mod/event.html
#
#LoadModule mpm_event_module modules/mod_mpm_event.so  apache2.4 默认使用prefork模式,默认设置这里没有显示,需在官网查询
  打开查询网址
http://httpd.apache.org/docs/2.4/mod/prefork.html  发现prefork模式有以下配置
StartServers(启动时进程数,默认5)
MinSpareServers(最小空闲进程数,默认5)
MaxSpareServers(最大空闲进程数,默认10)
MaxRequestWorkers(最大进程数,不可大于serverlimit,默认256)
MaxConnectionsPerChild(每个进程处理任务数,达到后重启进程,默认0,不重启)
ServerLimit(程序最大进程数,默认256)
ListenBacklog(超过MaxRequestWorkers最大服务请求,将连接进行排队,默认队列长度511)  参数调整逻辑,将以下参数
StartServers
MinSpareServers
MaxSpareServers
MaxRequestWorkers
ServerLimit  设置成同一数值,避免httpd进程数出现变化,造成性能不稳定。
  

  不重启进程,节约cpu。生产环境需设置一个较大数值,避免内存泄漏。
MaxConnectionsPerChild 0  将队列调高,将来不及处理的链接都进行排队
ListenBacklog 10000  

  ab测试的时候加上-r -k参数,避免出现小错误时候停止测试.
  -n 代表总测试次数,-c 代表每秒测试次数
ab -k -r -n 1000000 -c 512 'http://127.0.0.1/index.php'  新建会话使用top(这里推荐htop)观察内存,cpu占用情况,如出现cpu或内存超过80%负荷(在保证最高负荷时的稳定性,一般不推荐超过80%负荷,这是个人经验,无测试依据)情况,同步降低所有参数。
  

  其实一般情况下默认的参数就够用的,如果你的设备性能非常好,才需要慢慢调整配置。
  测试一次,调整一次,避免负优化。
  





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-637060-1-1.html 上篇帖子: Apache的commons 下篇帖子: Apache Shiro 认证、授权、加密和会话管理
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表