PHP 程序,负载均衡到两台服务器,CPU、内存等等参数都非常好,就是程序执行时间突然特别长。
平时的时候程序执行的时间也就在 200ms~1s 之间,今天下午突然访问量有点大,很多程序的执行时间都到了 3s~5s 但是查看了一下服务器的状态,CPU、内存都十分正常,不超过 30%。 redis 和 mysql 都是用的阿里云的,负载也十分正常。 请问下这种情况一般是什么造成的,应该具体怎么去排查?
1
vibbow 2018-02-08 21:37:37 +08:00
看看 io wait 呢?
|
2
defunct9 2018-02-08 22:04:11 +08:00 via iPhone
无法判断
|
3
woscaizi 2018-02-08 22:21:13 +08:00 via iPhone
非常可能是 mysql 的锅,可以查一下是否存在慢查询。
|
4
cxbig 2018-02-08 22:22:09 +08:00 via iPhone
分析 profile 看看慢在哪
|
5
akira 2018-02-08 23:08:39 +08:00
看下 redis 和 mysql 的 慢日志记录,应该会有收获。
比较通用的做法肯定是上性能分析了,分小部分流量去一台做了性能分析的机器,然后看到底是哪个地方耗时了。这样的话,分析起来就比较有针对性和目的性了 |
6
em70 2018-02-09 02:31:31 +08:00
ping 一下 ECS 和 RDS 之间的延迟有多少,是否用了内部地址
|
7
zjb861107 2018-02-09 02:37:15 +08:00 via iPhone
会不会是网络问题,比如丢包
|
8
m939594960 OP |
9
cxh116 2018-02-09 07:58:44 +08:00
php 进程有多少个? 按照你给的一个请求至少 200ms.
(1000ms / 200ms) * 进程数,就是你最大的并发数.多了就会阻塞等待上个请求完成. |
10
John60676 2018-02-09 11:14:30 +08:00
我也觉得是 mysql 的锅
|