API接口当遇到并发量大的时候,性能明显降低是什么原因导致的?
API接口当遇到并发量大的时候,性能明显降低是什么原因导致的?
4台服务器走负载均衡
LNMP架构 采用的是YAF高性能框架
nginx + PHP5.3 +MySQL5.6
并发量到 3000以上明显就性能下降,具体原因有那些?
如何优化?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
首先,定位问题
1.通过慢请求日志定位问题,是否是数据库操作还是其他的问题-数据库操作优化,索引,sql语句优化等
2.确认nginx和php-fpm的参数是否是最优配置。
3.增加redis做热点数据缓存。
4.开启opcache做缓存。
5.升级php版本到7,性能优化。
性能下降有各种原因,可以从一些点入手:
写的程序是否合理,比如查多于写的地方,是否用的是set或者map,不能是list
代码的有些地方的写入操作是否可以使用异步执行
是否使用了很多db事物
有些不常改变的数据,是否可以加缓存
sql语句是否有索引问题
4台服务器 cpu 的使用率都是多少呢?会不会服务器的cpu 不够用呢?还有 mysql 的执行效率也是要注意的
建议排查sql语句是否有链表操作,是否存在事物,在3K的并发下面LNMP架构基本上没有什么压力的.同时可以排查一下查询和写入的数据量.
查看php-fpm.conf配置,服务器上开大php-fpm的进程量。