Linux查看网络和IO性能问题

Linux上使用iftop可以查看网络使用情况,使用iotop可以查看磁盘io使用情况

首先需要安装iftop和iotop:

yum install iftop

yum install iotop

===================================================================================================================================

iftop使用说明:

安装完成后,使用iftop -n命令可以查看网络的使用情况:

上传一个大文件之后,可以看到网络使用情况:

想要跟踪一下具体是哪个进程正在占用网络,可以使用下面的命令:

netstat -antop |grep 106.120.78.190

如果对应IP有多个连接存在,可能出现下面的结果(可以对一下上面的column名):

netstat参数含义:

-a (all)显示所有选项,默认不显示LISTEN相关

-t (tcp)仅显示tcp相关选项

-u (udp)仅显示udp相关选项

-n 拒绝显示别名,能显示数字的全部转化成数字。

-l 仅列出有在 Listen (监听) 的服務状态

-p 显示建立相关链接的程序名

-r 显示路由信息,路由表

-e 显示扩展信息,例如uid等

-s 按各个协议进行统计

-c 每隔一个固定时间,执行该netstat命令。

第一个2880这一列是接收队列,如果其中某个连接这个队列积压很多,说明就是这个链接产生的大流量,进一步对照PID这一列,可以找到对应的PID为37973,然后使用ps命令来查看进程的详细信息:

ps参数说明:

-a  显示所有终端机下执行的进程,除了阶段作业领导者之外。

a  显示现行终端机下的所有进程,包括其他用户的进程。

-A  显示所有进程。

-c  显示CLS和PRI栏位。

c  列出进程时,显示每个进程真正的指令名称,而不包含路径,参数或常驻服务的标示。

-C<指令名称> 指定执行指令的名称,并列出该指令的进程的状况。

-d  显示所有进程,但不包括阶段作业领导者的进程。

-e 此参数的效果和指定"A"参数相同。

e  列出进程时,显示每个进程所使用的环境变量。

-f 显示UID,PPIP,C与STIME栏位。

f 用ASCII字符显示树状结构,表达进程间的相互关系。

-g<群组名称>此参数的效果和指定"-G"参数相同,当亦能使用阶段作业领导者的名称来指定。

g 显示现行终端机下的所有进程,包括群组领导者的进程。

-G<群组识别码> 列出属于该群组的进程的状况,也可使用群组名称来指定。

h  不显示标题列。

-H 显示树状结构,表示进程间的相互关系。

-j或j  采用工作控制的格式显示进程状况。

-l或l  采用详细的格式来显示进程状况。

L  列出栏位的相关信息。

-m或m  显示所有的执行绪。

n  以数字来表示USER和WCHAN栏位。

-N 显示所有的进程,除了执行ps指令终端机下的进程之外。

-p<进程识别码> 指定进程识别码,并列出该进程的状况。

p<进程识别码>此参数的效果和指定"-p"参数相同,只在列表格式方面稍有差异。

r 只列出现行终端机正在执行中的进程。

-s<阶段作业> 指定阶段作业的进程识别码,并列出隶属该阶段作业的进程的状况。

s 采用进程信号的格式显示进程状况。

S  列出进程时,包括已中断的子进程资料。

-t<终端机编号> 指定终端机编号,并列出属于该终端机的进程的状况。

t<终端机编号>此参数的效果和指定"-t"参数相同,只在列表格式方面稍有差异。

-T  显示现行终端机下的所有进程。

-u<用户识别码> 此参数的效果和指定"-U"参数相同。

u 以用户为主的格式来显示进程状况。

-U<用户识别码> 列出属于该用户的进程的状况,也可使用用户名称来指定。

U<用户名称> 列出属于该用户的进程的状况。

v 采用虚拟内存的格式显示进程状况。

-V或V  显示版本信息。

-w或w  采用宽阔的格式来显示进程状况。

x 显示所有进程,不以终端机来区分。

X  采用旧式的Linux i386登陆格式显示进程状况。

-y 配合参数"-l"使用时,不显示F(flag)栏位,并以RSS栏位取代ADDR栏位

-<进程识别码>此参数的效果和指定"p"参数相同。

--cols<每列字符数> 设置每列的最大字符数。

--columns<每列字符数> 此参数的效果和指定"--cols"参数相同。

--cumulative  此参数的效果和指定"S"参数相同。

--deselect 此参数的效果和指定"-N"参数相同。

--forest  此参数的效果和指定"f"参数相同。

--headers 重复显示标题列。

--help  在线帮助。

--info  显示排错信息。

--lines<显示列数> 设置显示画面的列数。

--no-headers  此参数的效果和指定"h"参数相同,只在列表格式方面稍有差异。

--group<群组名称> 此参数的效果和指定"-G"参数相同。

--Group<群组识别码> 此参数的效果和指定"-G"参数相同。

--pid<进程识别码> 此参数的效果和指定"-p"参数相同。

--rows<显示列数> 此参数的效果和指定"--lines"参数相同。

--sid<阶段作业> 此参数的效果和指定"-s"参数相同。

--tty<终端机编号> 此参数的效果和指定"-t"参数相同。

--user<用户名称> 此参数的效果和指定"-U"参数相同。

--User<用户识别码> 此参数的效果和指定"-U"参数相同。

--version 此参数的效果和指定"-V"参数相同。

--widty<每列字符数> 此参数的效果和指定"-cols"参数相同。

常用命令:

ps -ef

ps aux

ps aux输出格式

USER PID %CPU %MEM VSZ RSS TTY STATSTART TIME COMMAND

USER: 进程拥有者

PID:pid

%CPU:占用的cpu使用率

VSZ:占用的内存使用率

RSS:占用的虚拟内存大小

TTY:是否为登入者执行的程序,若为tty1-tty6,为本机登入者,若为pts/??,则为远程登入者。

STAT:程序的状态,R:正在执行中,S:睡眠,T:正在检测或者停止,Z:死亡程序

START:程序开始时间

TIME:程序运行的时间

COMMAND:所执行的指令。

=========================================================================================================================================

iotop使用说明:

首先使用命令iotop查看信息:

在这个界面按p键可以将TID变为PID,按o键可以将当前活跃的显示出来而不是显示所有进程:

根据PID可以查看一下对应的进程:

原文地址:https://www.cnblogs.com/AmilyWilly/p/8600943.html

时间: 2024-10-09 20:46:02

Linux查看网络和IO性能问题的相关文章

Linux查看网络即时网速 linux性能问题(CPU,内存,磁盘I/O,网络)

Linux查看网络即时网速 sar -n DEV 1 100 1代表一秒统计并显示一次 100代表统计一百次 使用ntop等工具,就更方便简单了,不过这个更灵活 P.S. sar在sysstat包 一. CPU性能评估 1.vmstat  [-V]  [-n]  [depay  [count]] -V : 打印出版本信息,可选参数 -n : 在周期性循环输出时,头部信息仅显示一次 delay : 两次输出之间的时间间隔 count : 按照delay指定的时间间隔统计的次数.默认是1 如:vms

linux查看网络链接状况命令netstat

linux查看网络链接状况命令 netstat 参数如下: -a 显示所有socket,包括正在监听的. -c 每隔1秒就重新显示一遍,直到用户中断它. -i 显示所有网络接口的信息,格式同“ifconfig -e”. -n 以网络IP地址代替名称,显示出网络连接情形. -r 显示核心路由表,格式同“route -e”. -t 显示TCP协议的连接情况. -u 显示UDP协议的连接情况. -v 显示正在进行的工作. 1. netstat -an | grep LISTEN 0.0.0.0的就是每

Linux 查看磁盘读写速度IO使用情况

# 查看io进程 命令:iotop 注:DISK TEAD:n=磁盘读/每秒              DISK WRITE:n=磁盘写/每秒. 注:标黄的可查看磁盘的读写速率,下面可以看到使用的io. # 查看当前磁盘IO 读写 sar -b 1 10 注:每1秒 显示 1次 显示 10次 19时54分35秒 tps rtps wtps bread/s bwrtn/s 19时54分36秒 0.00 0.00 0.00 0.00 0.00 19时54分37秒 0.00 0.00 0.00 0.0

Linux查看网络端口对应的程序

在linux下,有的时候我们想查看下某个端口是被哪个程序listen,比如说3000这个端口,有以下两种方式 1. 采用 lsof命令  lsof -i :3000 2. 采用netstat命令 netstat -a |grep LISTEN |grep -v unix

linux 查看网络流量命令

sar命令参数很多,有时间man一下. -n参数很有用,他有6个不同的开关:DEV | EDEV | NFS | NFSD | SOCK | ALL .DEV显示网络接口信息,EDEV显示关于网络错误的统计数据,NFS统计活动的NFS客户端的信息,NFSD统计NFS服务器的信息,SOCK显示套 接字信息,ALL显示所有5个开关.它们可以单独或者一起使用.我们现在要用的就是-n DEV了. 输入命令:sar –n DEV 1 4 命令后面 1 4 意思是:每一秒钟取一次值,取四次. IFACE:L

Linux查看网络即时网速

sar -n DEV 1 100 1代表一秒统计并显示一次 100代表统计一百次 使用ntop等工具,就更方便简单了,不过这个更灵活 P.S. sar在sysstat包 来源:http://www.cnblogs.com/eshizhan/archive/2012/04/11/2441644.html

Linux 查看网络连接状态

CLOSED:无连接是活动的或正在进行ESTABLISED:已建立连线的状态:SYN_SENT:发出主动连线 (SYN 标志) 的连线封包:SYN_RECV:接收到一个要求连线的主动连线封包:FIN_WAIT1:该插槽服务(socket)已中 断,该连线正在断线当中:FIN_WAIT2:该连线已挂断,但正在等待对方主机回应断线确认的封包:TIME_WAIT:该连线已 挂断,但 socket 还在网路上等待结束:LISTEN:通常用在服务的监听 port !可使用『 -l 』参数查阅.CLOSIN

linux中查看网络流量的方法

linux查看网络流量 用iptraf查看流量信息命令如下: shell〉 iptraf -d eth0 #若没有iptraf 命令则安装方法如下:   shell> yum -y install gcc glibc ncurses    shell> yum install iptraf  #即可完成查看网络流量

10.6 监控io性能 - 10.7 free命令 - 10.8 ps命令 - 10.9 查看网络状态 - 10.10 linux下抓包

- 10.6 监控io性能 - 10.7 free命令 - 10.8 ps命令 - 10.9 查看网络状态 - 10.10 linux下抓包 - 扩展tcp三次握手四次挥手 http://www.doc88.com/p-9913773324388.html  - tshark几个用法:http://www.aminglinux.com/bbs/thread-995-1-1.html  # 10.6 监控io性能 ![mark](http://oqxf7c508.bkt.clouddn.com/b