您的位置:首页 > 其它

对于服务响应慢的问题排查和分析(1)

2014-11-05 17:40 148 查看
简单描述一下问题现象,主要是两个:1. 手机客户端偶尔有时候会出现卡顿现象,比如显示一直在加载,或者显示超时、连接不上服务器。但重新刷新又会问题消失。 2. 最近一段时间早上网站在10点前后一段时间在办公室访问特别慢,半天刷不出来。app有时候也卡。但同一时间,在服务器上直接wget 网站,速度飞快。

当前的服务架构:api server在一台机器上, 网站服务器web server在另一台机器上, 手机app直接请求api server,web server的大量功能会通过内网ip请求api server。master db和slave db分别在另外两台机器,和api server、web server之间的通信也是走内网ip。

问题排查过程如下:

1. 首先看服务器本身负载问题,包括机器网络环境,有一些是监控宝数据,一些是zabbix监控数据。

web serverapi servermaster dbslave db
cpu负载早上10点左右为一天的最高峰,通常在4-7之间。

下午开盘后一般在2-4之间。其他时间在2以下

早上10点左右为一天最高峰,在2-2.5之间5以内  5以内
网络流量流入较多,高峰期在下午1点-3点,6M左右,流入只有4M左右。

10点的流入是4M左右,流出是2M左右(监控宝数据)

主要为流出,早上10点前后到达高峰,一般在25M左右(监控宝数据,zabbix数据超过30M)zabbix数据: 流入不超过1.5M,各时段比较平均。流出在2.5M-4M之间,10点前后也不是一天的最高峰。zabbix 数据:流入的峰值在10-14M(这台机器上有抓取),但一天内出现较多,10点左右的流量不比其他时段多。流出的峰值不到1M,并且各时段都差不多。
ping响应时间可用率100%,平均响应30ms以内可用率100%,平均响应30ms以内无监控  无监控
端口连接数(netstat -nap统计)早上10点左右为1w多,端口资源总数是2w多。早上10点左右为5w多,端口资源总数在6w多 1w以内  1w以内
服务连接数httpd进程在500以内(高峰期的active threads不超过300,Idle Threads为100出头),上限是2000 httpd进程在800以内(高峰期的active threads是450,Idle Threads为400出头),上限是1024 上限800,高峰期连接数最大不超过300上限800,高峰期连接数最大不超过150
2. 其次看一下监控宝上对http接口的监控数据,一共监控了3个接口

网站首页:web server上



大盘行情接口:api server上



公司主页:web server上



推送服务接口:api server上



3. 查api server和web server上的/var/log/messagess,没有发现错误信息

综上,从上面数据看起来,更像是api和web服务内部性能的问题,而不是系统资源问题。因为在同一台服务器上的公司主页响应速度不慢。而且apache进程数和mysql的进程数都未到上限,我们在日志里也没有发现之前遇到过的mysql连接失败问题。推送服务接口响应慢是一个比较奇怪的现象。因为推送服务的逻辑相对简单。

问题原因仍然待查
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: