您的位置:首页 > 运维架构 > 网站架构

网站访问慢,服务器负载高-查找问题方法

2016-03-15 17:42 387 查看
如果以后出现报警各网站无法ping通,或者服务器负载过高,可通过以下几条途径查找原因:
1,查看访问日志,查看是否有访问异常,如有,过滤IP,进行IP封装

cat my.xoyo.com | awk ‘{print $1}’ | sort | uniq –c | sort –n >/tmp/ip.txt
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort –n

2,查看网卡是否有严重丢包现象,ifconfig查看dropped 或error是否不断增加,判断是否网卡出现问题。
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}' 查看各阶段连接状况
SYN_SENT(请求连接) ESTABLISHED(通信中)状态的是否连接明显太多

netstat -n | grep "ESTABLISHED"|awk '{print $5}'|sort |uniq -c|sort -nr
如发现处于本状态最多的ip是本机,从而排除是dos攻击的可能

Ifconfig
查看dropped 或error是否不断增加,判断是否网卡出现问题。

3,如果日志总是涉及某个项目,查看最近是否有新上线活动或者更新,确定是否程序代码出现问题

4,将有问题的项目分别绑定各相关前端机,查看是否访问正常,排除故障服务器

5,查看占用负载较高的一些进程是被哪些程序或应用占用
Top
查看系统负载和占用资源较高的进程
Lsof –p pid号
查看pid被哪些进程使用

6,查看PHP等主要应用程序端口使用情况,是否被占用
Lsof –i:端口

7,查看PHP的慢日志,是否有程序文件超时,频繁报错
Php-fpm.conf 打开php配置文件
Request_slow_log_timeout 10s
设置执行超时时间

8,如果上述查找发现问题有关mysql,查看mysql最大连接数是否过低
show variables like 'max_connections';
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  服务器 网站 访问慢