设为首页 收藏本站
查看: 621|回复: 1

[经验分享] apache网站访问慢的实践处理过程

[复制链接]

尚未签到

发表于 2017-10-25 10:45:00 | 显示全部楼层 |阅读模式
一、故障描述
    客户业务是基于LAMP架构的php站点,由于每秒钟访问量在230左右,导致了用户的网站访问很缓慢,打开时间在11秒左右,严重影响了业务和客户体验度。
二、排查过程
2.1 从服务器系统方面考虑:CPU、内存、IO、网络等综合查看都很正常;
2.2 从数据库方面排查:数据库压力不大,运行正常;
2.3 查看apache的进程数75个,显然和现在的并发量相差很大,解决方法就是调整apache的进程数。
三、处理过程
3.1 首先了解Apache采用的MPM(Multi -Processing Modules,多道处理模块)
    MPM是Apache的核心,它的作用是管理网络连接、调度请求。Apache2.0中MPM有3种类型,分别为perfork、worker和event:
A.perfork从Apache1.3中继承下来的,它采用的是进程管理方式,可以提供更可靠的性能和更好的兼容性;
B.worker是Apache2.0中新增加的方式,它采用了线程控制方法,可以比perfork更节约系统开销、处理更多的数据量,但同时兼容性并不是很好,很多旧的程序无法工作在worke下;
C.event仍处于试验阶段,它为每个任务分配不同的进程池,目前不应该采用。
3.2 通过命令 httpd -l 可以获取目前Apache采用的是perfork MPM模式
[iyunv@localhost apache]# httpd -l
Compiled in modules:
      core.c
      prefork.c
      http_core.c
      mod_so.c
3.3 修改配置文件httpd-mpm.conf重要参数
    重启httpd 但是查看了配置不生效,经过查看日志错误:
WARNING: MaxClients of 1500 exceeds ServerLimit value of 256 servers,
lowering MaxClients to 256.  To increase, please see the ServerLimit
directive.
[Fri Dec 29 02:55:50 2006] [warn] WARNING: Attempt to change ServerLimit ignored during restart
[Fri Dec 29 02:55:50 2006] [notice] Apache configured -- resuming normal operations
3.4 针对日志添加了ServerLimit和ThreadLimit这两个指令
vim httpd-mpm.conf
ServerLimit 768
MaxClients 768
3.5 停止服务器再重启配置生效
    ServerLimit和ThreadLimit这两个指令决定了活动子进程数量和每个子进程中线程数量的硬限制。要想改变这个硬限制必须完全停止服务器然后再启动服务器。
四、故障总结
    之前看到很多apache针对StartServers、MinSpareServers、MaxSpareServers等优化的文章,而少有在生产环境中针对apache高并发的优化,这次的故障解决让我感觉实践出真理。


运维网声明 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-405874-1-1.html 上篇帖子: Apache2.2.32编译安装 下篇帖子: apache 虚拟目录配置及详解
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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