专题专栏
当出现性能问题时,可以通过Linux操作系统命令获取性能信息。 本节将介绍一些常用的Linux性能监控命令。
top命令——监控进程状态
该命令适合实时掌握操作系统的整体情况,可以实时反映系统中各个进程的资源使用情况,类似于Windows的任务管理器。 使用top命令显示进程信息。
portant;border-width: 1px !important;border-style: solid !important;border-color: rgb(226, 226, 226) !important;">
# top
图中,上半部分显示了操作系统的各种信息,包括CPU使用率、内存使用率、进程执行情况等,下半部分显示了活动较为频繁的进程,可以通过这些进程中的问题线索进行排查。 识别出可疑进程后,可以指定相关进程、设置信息更新时间、显示完整命令。 我们看一个例子,指定进程9836每5秒显示一次该进程的资源使用情况。
portant;border-width: 1px !important;border-style: solid !important;border-color: rgb(226, 226, 226) !important;">
# top –d 5 –p 9836 -c
ps命令——查看当前进程
该命令适合检查某一时刻存在哪些进程,这些进程的信息和状态等。通过ps命令,可以确定当前进程的状态,从而找出问题的原因。 使用 ps 命令可以显示系统当前的所有进程。
portant;border-width: 1px !important;border-style: solid !important;border-color: rgb(226, 226, 226) !important;">
# ps -ef
同时,您还可以指定查看相关进程。 我们来看一个查看所有java进程的例子。
portant;border-width: 1px !important;border-style: solid !important;border-color: rgb(226, 226, 226) !important;">
# ps –ef | grep java
netstat命令——检查网络连接状态
该命令可以了解Linux系统的网络状态,适合查看网络连接信息。 其中数字监控系统软件教程,可以查看当前所有连接。
portant;border-width: 1px !important;border-style: solid !important;border-color: rgb(226, 226, 226) !important;">
# netstat -a
此外,还可以监视 TCP 连接。
portant;border-width: 1px !important;border-style: solid !important;border-color: rgb(226, 226, 226) !important;">
# netstat –atl
您甚至可以计算端口上当前的连接数。 让我们看一个示例,其中检查端口 10090 上的当前连接数。
portant;border-width: 1px !important;border-style: solid !important;border-color: rgb(226, 226, 226) !important;">
# netstat -an | grep 10090 | wc -l
该命令适用于监控系统设备的IO负载以及监控系统的磁盘操作活动。 iostat第一次运行时,会显示系统启动以来的各种统计信息。 此后运行 iostat 将显示自上次运行该命令以来的统计信息。 用户可以通过指定统计次数和时间来获取所需的统计信息。 让我们看一个例子,我们每秒采样一次,连续 5 次来观察磁盘 IO 使用情况。
portant;border-width: 1px !important;border-style: solid !important;border-color: rgb(226, 226, 226) !important;">
# iostat –k 1 5
sar 命令 – 性能监控
该命令适合监控CPU使用率和空闲情况、磁盘I/O使用率、网卡流量使用率等。要监控CPU,可以使用-u参数输出CPU使用率的统计信息。 我们看一个例子,每秒采样一次,连续 10 次,观察 CPU 使用情况。
portant;border-width: 1px !important;border-style: solid !important;border-color: rgb(226, 226, 226) !important;">
# sar –u 1 10
值得注意的是,如果%user + %sys超过85%,进程可能会花费时间在运行队列中等待,因此响应时间和吞吐量都会受到影响。 然而,100%的使用率并不一定意味着CPU是性能瓶颈。 这时可以进一步检查vmstat命令中的r值是否超过服务器的CPU数量。 另外%system比较大,说明在系统管理上花费了很多时间。 需要进一步分析其他软件和硬件因素。 要监视磁盘 I/O,可以使用 –d 参数输出每个块设备的活动信息。 让我们看一个例子,我们每秒采样一次,连续 10 次,以观察磁盘 I/O 使用情况。 其中-p参数可以打印出磁盘的设备名。
portant;border-width: 1px !important;border-style: solid !important;border-color: rgb(226, 226, 226) !important;">
# sar –pd 1 10
如果%util接近100%,则可能由于产生过多的I/O请求而导致I/O系统已满,从而导致磁盘出现瓶颈。 另外,如果%await比%svctm大很多,可能是因为磁盘I/O队列太长,导致响应时间变慢。
vmstat命令——虚拟内存监控
该命令适合监控CPU使用率、内存使用率、虚拟内存交换、IO读写等。我们看一个例子,每秒采样一次,连续5次,观察虚拟内存的使用情况。
portant;border-width: 1px !important;border-style: solid !important;border-color: rgb(226, 226, 226) !important;">
# vmstat 1 5
其中,第一行显示的是Linux操作系统启动后的平均值,所以一般看第二行之后的值。
其中swpd、si等三个指标的值都比较高,可能是内存不足的原因。 如果缓存使用率很低数字监控系统软件教程,而swap的si左右数据值比较高,则应该警惕内存性能问题。 另外,需要注意的是,当内存严重不足时,系统会频繁使用分页和交换,这会增加磁盘I/O负载,进一步降低系统的作业执行速度。 即系统I/O资源问题又会出现。 影响内存资源的分配。
nmon命令——性能监控
nmon可以一屏显示所有重要的性能信息,包括CPU信息、内存信息、网络信息、磁盘I/O信息等,并动态更新。 可以从IBM官网免费下载,也可以直接通过yum命令安装。 这里使用wget方法下载并安装。
portant;border-width: 1px !important;border-style: solid !important;border-color: rgb(226, 226, 226) !important;">
# wget http://sourceforge.net/projects/nmon/files/nmon_linux_14i.tar.gz
# tar zxvf nmon_linux_14i.tar.gz
# chmod 777 nmon_x86_64_sles11
至此,安装完成。 从以下命令开始。
portant;border-width: 1px !important;border-style: solid !important;border-color: rgb(226, 226, 226) !important;">
# ./nmon_x86_64_sles11
在运行界面,输入C显示CPU信息,输入M显示内存信息,输入N显示网络信息,输入D显示硬盘I/O信息。
过去的
预计
精制
颜色
结尾
>>>