一、需求:
1、某用户移动端App:
客户端:Vue2+Tp6
管理端:FastAdmin
服务器配置:CPU:32核,内存:32G
单体架构(宝塔):所有服务都在一台机器上具体配置如下
Linux7.x + Nginx1.1.9 + Mysql5.6 + PHP7.2
2、由于平台发展用户量以及
访问活跃度激增
,导致CPU + 内存跑满
,大量请求出现502状态
和500状态
,大概QPS
高的时候在1000左右
二、解决思路:
1、检查网站被攻击的可能性
2、检查磁盘I/O
读写速度延迟问题导致CPU和内存跑满
3、查看当前Linux吃内存和CPU较多的进程都是哪些
然后具体分析是否有执行时间过长的进程,再优化代码层面
4、优化PHP-FPM参数
、优化Mysql参数
、优化Nginx参数
5、开启PHP慢日志
6、开启Mysql慢查询日志
三、解决过程:
1、根据服务商提供的信息和Nginx日志查询不曾有攻击的可能性
2、查看磁盘I/O读写有延迟
问题(可能存在问题 1.Mysql大量读写
2.日志大量读写
3.上传下载文件
)此问题存在问题3
上,有大量的图片并发上传而且没有经过压缩图片大小都在 3MB-10MB之间
,首先从代码层面改造上传压缩后的图片,将图片大小控制在1MB以内
&#x