提升服务器应对高并发之路
来源:互联网 发布:风控模型算法 编辑:程序博客网 时间:2024/06/05 10:54
公司运营的公众号,粉丝有350W以上。微信推送时,开始的半小时,访问量从0一下到达峰值。最高同时在线人数1w以上,因为用户的主要数据操作都在进入瞬间,预估最高并发的话,应该在1w以上,导致页面出现大量502。业务逻辑中,包含读写数据库及curl调用外部接口。
现有服务器配置:
阿里云ECS 16核+16G
nginx : 1.2.7
php : 5.3.17
数据库:阿里云RDS,主从服务器,随时扩展
数据库配置了主从,并且可随时扩展,现在就主要测试nginx和php的抗并发能力了。因为内网没有其他服务器了,故用本机进行压力测试。
1、测试一张静态图片的并发情况:
2、测试一个静态HTML页面并发情况:
由上面两组测试可知,静态图后台静态HTML的QPS基本一致,都在一万以上,nginx是可以撑得住当前并发量的
3、测试一个php页面的并发情况:
测试代码:
$i = 0;for($i;$i<10000;$i++){ $n=$i*($i+1);}echo $n;
从测试结果看,QPS减少了1/2还要多,而此时php-fpm的进程数并没有用到max_children的数量。
修改测试的php文件内容,改为:
echo 'HELLO WORLD';exit;
再次测试,QPS在1w左右,性能损耗较少,经过上面测试可知,php-fpm的处理能力与页面的处理逻辑相关。
经过测试,php-fpm一个进程的处理速度还是很快的,即使并发1w,进程最多开到400个,实际应用中,逻辑复杂些的话,max_children设置为2000应该也够用了。那可能存在的问题就是,curl的接口,遇到高并发阻塞了,导致没有进程处理新的访客,所以频繁出现 502错误。
解决方法,设置CURL的超时时间,超时之后,结束进程,以供新的访客使用。
阅读全文
0 0
- 提升服务器应对高并发之路
- 高并发解决方案—提升高并发量服务器性能
- 应对高并发笔记
- 应对高并发笔记
- 如何应对高并发?
- windows服务器应对高并发和DDOS攻击
- 高并发应对:淘宝CDN缓存服务器部署探秘
- windows服务器应对高并发和DDOS攻击
- Memcached 应对高并发攻击
- 四 memcache应对高并发
- Memcached应对高并发攻击
- 高并发的应对方法
- 提升高并发量服务器性能解决思路
- 提升高并发量服务器性能解决思路
- 提升高并发量服务器性能解决思路[…
- 提升高并发量服务器性能解决思路
- 高并发解决方案——提升高并发量服务器性能解决思路
- 高并发解决方案——提升高并发量服务器性能解决思路
- 多线程购买车票
- THINKPHP 防止重复提交表单
- 单片机串口通信紊乱
- SpringBoot 错误总结
- 数据结构复习笔记01_排序算法_交换排序
- 提升服务器应对高并发之路
- bzoj4034: [HAOI2015]树上操作
- Java 类的一些基本语法
- Nvidia gpu物理结构与编程模型简介
- Java泛型了解
- 多线程简单实例
- 【PAT】【Advanced Level】1005. Spell It Right (20)
- bzoj 2565: 最长双回文串
- Spring-Data-JPA 错误总结