赞
踩
(尊重劳动成果,转载请注明出处:https://blog.csdn.net/qq_25827845/article/details/83956874冷血之心的博客)
目录
top----Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况
free----显示Linux系统中空闲的、已用的物理内存及swap内存,及被内核使用的buffer
iostat----用于输出CPU和磁盘I/O相关的统计信息
ps----命令用于显示当前进程 (process) 的状态
ping----常用的网络命令,它通常用来测试与目标主机的连通性
做为一名优秀的Java开发工程师,我们必不可少的会用到以下几个命令:
接下来我们开始介绍各个命令的输出。
Linux中的top命令显示系统上正在运行的进程。它是系统管理员最重要的工具之一。被广泛用于监视服务器的负载。top命令的输出如下:
在上边的输出中,前五行水平显示了不同系统参数的概括,接下来是进程和它们在列中的属性。
第一行显示的信息的含义表示如下:
当前时间
系统已运行的时间
当前登录用户的数量
相应最近5、10和15分钟内的平均负载。
第二行显示的是任务或者进程的总结。进程可以处于不同的状态。这里显示了全部进程的数量。除此之外,还有正在运行、睡眠、停止、僵尸进程的数量(僵尸是一种进程的状态)。
第三行显示的是CPU状态。 这里显示了不同模式下的所占CPU时间的百分比。这些不同的CPU时间表示:
us, user: 运行(未调整优先级的) 用户进程的CPU时间
sy,system: 运行内核进程的CPU时间
ni,niced:运行已调整优先级的用户进程的CPU时间
wa,IO wait: 用于等待IO完成的CPU时间
hi:处理硬件中断的CPU时间
si: 处理软件中断的CPU时间
st:这个虚拟机被hypervisor偷去的CPU时间(译注:如果当前处于一个hypervisor下的vm,实际上hypervisor也是要消耗一部分CPU处理时间的)。
第四和第五行显示内存使用率,第一行是物理内存使用,第二行是虚拟内存使用(交换空间)。
物理内存显示如下:
交换部分显示如下:
接下来显示的当前机器中各个进程的信息,如下所示:
各个字段表示的含义如下:
D – 不可中断的睡眠态。
R – 运行态
S – 睡眠态
T – 被跟踪或已停止
Z – 僵尸态
%CPU:自从上一次更新时到现在任务所使用的CPU时间百分比。
%MEM:进程使用的可用物理内存百分比。
TIME+:任务启动后到现在所使用的全部CPU时间,精确到百分之一秒。
COMMAND:运行进程所使用的命令。
当我们想查看每个进程中的所有线程的情况时,需要使用 top -h -p pid 命令,输出如下所示:
当我们指定要查看某个进程内部的各个线程的情况时,在输出的第二行就变成了 Threads 而不是之前的 Tasks
其实top命令的第一行就是系统的负载,我们也可以使用uptime来单独查看。
重点关注参数:
load average 代表了最近1分钟,5分钟,15分钟CPU的平均负载情况。CPU核数乘以0.7,即如果CPU总核数为4,当load average上15分钟的数值达到2.8时,系统需要处理。
可以使用的参数如下:
区别:
第二行(mem)的used/free与第三行(-/+ buffers/cache) used/free的区别。 这两个的区别在于使用的角度来看,第一行是从OS的角度来看,因为对于OS,buffers/cached 都是属于被使用。
第三行所指的是从应用程序角度来看,对于应用程序来说,buffers/cached 是等于可用的,因为buffer/cached是为了提高文件读取的性能,当应用程序需在用到内存的时候,buffer/cached会很快地被回收。
所以从应用程序的角度来说,可用内存=系统free memory+buffers+cached。
iostat命令的用法:iostat [ 选项 ] [ <时间间隔> [ <次数> ]]
可以使用的参数包括:
所表示的含义如下:
需要重点关注参数
1、avgqu-sz 表示磁盘IO队列长度,即IO等待个数。
2、await 表示每次IO请求等待时间,包括等待时间和处理时间
3、svctm 表示每次IO请求处理的时间
4、%util 表示磁盘忙碌情况,一般该值超过80%表示该磁盘可能处于繁忙状态。
这个命令更加常用了,可以使用的参数如下:
查看当前所有tcp端口:netstat -nltp
查看所有8080端口使用情况:netstat -an |grep 8080
该命令可选的参数如下:
df [选项] [文件名]
参数:
du,disk usage,是通过搜索文件来计算每个文件的大小然后累加,du能看到的文件只是一些当前存在的,没有被删除的。它计算的大小就是当前他认为存在的所有文件大小的累加和。
df,disk free,通过文件系统来快速获取空间大小的信息,当我们删除一个文件的时候,这个文件不是马上就在文件系统当中消失了,而是暂时消失了,当所有程序都不用时,才会根据OS的规则释放掉已经删除的文件,df记录的是通过文件系统获取到的文件的大小,它比du强的地方就是能够看到已经删除 的文件,而且计算大小的时候,把这一部分的空间也加上了,更精确了。
当文件系统也确定删除了该文件后,这时候du与df就一致了。
eg.查看与java相关的进程信息:ps -ef|grep java
这篇文章比较详细的介绍了常用的linux运维命令,这些命令对我们的日常工作效率的提高都有着显著的作用,在此总结下来和大家一起学习,研究,掌握其最简单的用法。
如果对你有帮助,记得点赞哦~欢迎大家关注我的博客,可以进群366533258一起交流学习哦~
本群给大家提供一个学习交流的平台,内设菜鸟Java管理员一枚、精通算法的金牌讲师一枚、Android管理员一枚、蓝牙BlueTooth管理员一枚、Web前端管理一枚以及C#管理一枚。欢迎大家进来交流技术。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。