监控io性能
free命令
ps命令
查看网络状态
linux下抓包linux
---ios
监控io性能web
查看磁盘 缓存
iostat 和sar属于同一个包,安装sysstat的时候会安装。网络
若是磁盘io占比>50%,说明磁盘很是的忙。多线程
若是这个数字大,那么读写也会很大。tcp
若是读写不大,只是这个数字大,说明硬盘可能有故障。若是硬盘慢,即便CPU再快,也会影响系统性能。工具
iotop 动态显示性能
free命令线程
linux系统会先预分配一部份内存出来给buff(缓冲)和cache(缓存)
0000数据(磁盘)->内存(cache)->CPU
0000计算完的数据->内存(buffer) ->磁盘
Total = used+free +buff/cache
Available 包含free和buffer/cache剩余部分。
若是swap不够了,used都跑满了,free剩余为0了,那swap就须要加了。加swap不是解决问题的办法,而是应该加内存,swap不够了说明内存不够或者是泄露了,程序有bug.
ps命令
ps aux
把系统全部的进程所有列出来
和管道符结合
[root@serverlooker-01 ~]# ps -elf 和aux差很少。
杀死一个进程 (找到pid)
看一个进程在哪儿启动的
STAT 部分说明
D 不能中断的进程
R run状态的进程
S sleep状态的进程 占用CPU时间很是短暂,基本不耗费CPU资源。
T 暂停的进程
Z 僵尸进程
< 高优先级进程 CPU先紧着给它用
N 低优先级进程
L 内存中被锁了内存分页
s 主进程
l 多线程进程
+ 前台进程
进程和线程最大的区别就是:
1 进程里包含了线程,线程是进程的子单元
2 同一个进程下的线程所有共享相同的内存,而进程之间内存相互隔离。
查看网络状态
netstat 查看tcp/ip的通信
TCP/IP 3次握手 4次挥手
ESTABLISHED 很大,说明系统很忙。
ss-an 和 netstat 差很少,缺点是不会显示进程的名字。
linux下抓包
tcpdump
通讯成对出现 (tcpdump看的是数据的流向)
另外注意Length
DDos udp flood 每每是攻击。只能接入专业的防攻击方案。
指定端口:
[root@serverlooker-01 ~]# tcpdump -nn -i ens33 port 22
也能够指定排除:
[root@serverlooker-01 ~]# tcpdump -nn -i ens33 not port 22
也能够指定IP
[root@serverlooker-01 ~]# tcpdump -nn -i ens33 not port 22 and host 113.207.238.130
也能够指定长度和个数
抓完包后写入到指定文件
root@serverlooker-01 ~]# tcpdump -nn -i ens33 -c 10 -w /tmp/1.cap
另外一个工具: 也是用来抓包的
[root@serverlooker-01 ~]# yum install wireshark
tshark 查看指定网卡80端口web 访问状况。
相似于web的访问日志。
-----
ok.