查看系统负载: w/uptime 最后面三个数字表示1分钟,5分钟,15分钟平均有多少个进程占用CPU 占用CPU的进程能够是Running,也能够是Waiting 某一时刻1颗CPU只能有一个进程在使用其资源 #查看cpu信息:lscpu或cat /proc/cpuinfoios
top命令: top 回车就能够进入到top界面 每3秒刷新一次 默认按cpu百分比排序,能够按M键按照内存使用率大小排序 按数字1,能够显示全部CPU使用率详情shell
top -bn1 静态显示全部进程的状况,也是按cpu百分比排序 静态显示进程信息,方便在shell脚本中使用top命令安全
free命令: free查看内存和swap使用状况,关注最后一列的available,这个数字是真正剩余的物理内存大小 free -k -m -g -h服务器
手动增长swap:(厂商为了不影响磁盘性能,购买云服务器通常没有swap空间) dd if=/dev/zero of=/newswap bs=1M count=1000 mkswap /newswap #格式化 chmod 600 /newswap #变动权限(为了安全) swapon /newswap #挂载网络
监控磁盘: yum install -y sysstat iostat -dx 1 iostat -dx 1 5 #主要关注最后一列(util)当百分比数值过大,可能磁盘性能出问题了多线程
yum install -y iotop iotop 回车 动态显示,按IO使用率大小排序tcp
综合工具,判定瓶颈点: vmstat 1 vmstat 1 10 关注:r、b、si、so、bi、bo、id、wa工具
监控网卡流量: sar -n DEV 1 10 yum install -y epel-release yum install nload nload 回车后查看网卡流量,动态显示性能
ethtool ens33 mii-tool ens33ui
查看进程: ps aux 、 ps -elf 、 ps -eLf (查看线程)
STAT S Sleep R Running s 父进程 N 低优先级 < 高优先级 + 前台进程 l 多线程进程 Z 僵尸进程
ls -l /proc/pid/ #查看一个进程的一些详细信息
查看网络链接情况: netstat -lnp 、netstat -lntp 、 netstat -lntup netstat -an或ss -an (查看tcp通讯状态,establish/ESTAB表示正通讯,time_wait表示通讯完成还没断开)
抓包工具: tcpdump (安装:yum install -y tcpdump) tcpdump -nn -i ens33 port 80 tcpdump -nn -i ens33 -c 100 -w 1.cap tcpdump -i ens33 -nn not port 22 and not port 80 and not host 192.168.222.1 tcpdump -nn -r 1.cap
wireshark (安装:yum install -y wireshark) tshark -i ens33 -n -t a -R http.request -T fields -e "frame.time" -e "ip.src" -e "http.host" -e "http.request.method" -e "http.request.uri" #wireshark能够在Windows端安装,图形显示,能够分析tcpdump抓的.cap文件
补充:
buffer和cached buffer : 这部份内存是从CPU产生即将写入到磁盘里去的那部分数据 cached 这部分数据是先从磁盘里读出来,而后临时存到内存里的那部分数据