五个Linux简单命令帮你解决系统性能问题 |
本文标签:系统性能 事实上,利用一些简单的Linux命令,可以发现许多管理主机的细节问题并且能迅速而简单地解决性能问题 。 一、top TOP命令的功能丰富到令人难以置信(估计很少有人使用过一半以上的功能) 。一般来说你会以‘h’键开始,就是‘help’(说明文档也非常精彩) 。帮助参数可以快速显示出你能从中增加和减去的内容,同时也可以改变排序 。你还可以用k来结束进程或者用r标注特别的进程 。 Top命令显示当天的正常运行时间、系统负载、处理器的数量、内存的使用率和哪些进程使用了大多数CPU资源(包括每个进程的大量相关信息,例如在线用户和正在执行的命令等) 。 二、vmstat 在这里延迟是指两次刷新间隔的以秒为单位的时间,这里是10秒钟 。VMSTAT命令会将检查的结果不停刷新显示在屏幕上,直到你用CTRL-C命令结束它(或者你也可以在执行的时候设置一个限制) 。这个持续输出的结果有时候被用来导入到文件中用来分析性能趋势,但是我们将找到更好的方式来做这件事情,在文章后面的部分会介绍 。 第一列显示的是处理器, r列是待命的处理器,而b列是休眠的处理器 。如果你在这里看到好多个待命的处理器,那说明你可能在某个地方遇到了性能瓶颈 。第二列显示的是内存:虚拟的,空闲的,缓冲和缓存内存 。第三列显示的是交换存储以及具体有多少内存在和磁盘做交换 。第四列则是I/O信息,显示了块服务接收和发送的块数据信息 。 最后两列显示了系统和CPU相关的信息 。系统列显示的是冲突的数量和每秒钟的交换 。CPU列是显示了特别有用的信息 。每个分列显示了一个CPU时间的百分比 。这些分列如下: VMSTAT命令擅长用来查询CPU使用情况,虽然记住每个参数主要取决于持续的监控,因为对CPU进行短时间的观察你可能无法获知CPU真正的问题所在 。你需要查看长期的运行趋势来获得一个确切的CPU性能信息 。 三、iostat 在上面的图中你可以看到它们中的其中两个报告,第一个是CPU使用率,它将各进程占用的CPU用百分比分类列出来了 。你能看到用户进程、系统进程、iowait和空闲时间等信息 。 第二个报告是关于设备使用率,显示了安装在该主机上的每个设备和一些有用的信息,诸如每秒传输量、数据块读写,并且允许你对有性能问题的设备做标记 。你可以通过添加-k或者-m参数来按照千字节或者兆字节显示统计信息,而不是以数据块为单位,这样在某些情况下会更便于查阅和理解 。 最后一个报告,没有截图,显示的信息和上面介绍的设备使用率有点相似,只是对象从附件的设备换成了挂载的网络文件系统 。 四、free 五、sar 从这里我们可以看到sar命令的基本输出信息,包括CPU统计(每隔10分钟一次的数据和最后的平均数据) 。该信息是从一个以24小时为单位不停收集信息的日统计文件中抓取出来的(这个文件存储在目录/var/log/sa/中,并且被命令为saxx这样的格式,xx代表该数据收集的日期) 。另外它还收集关于内存、设备、网络等的统计信息(例如,通过加-b参数可以查看块设备统计信息,-n采查看网络数据,-r参数看内存使用) 。你还可以用-A参数来查看所有收集的数据 。 你还可以长时间运行sar命令然后将输出数据导入一个文件中来收集数据 。要达到这个效果,需要使用参数-o和一个文件名称,要运行该命令的时间间隔(记得收集数据会导致性能变差,所以最好确保这个间隔不要太短)和循环的次数-你要记录的间隔次数 。如果你不输入循环次数,则sar命令会一直运行下去,例如: 这里我们将收集所有数据(-A),记录到文件/var/log/sar/sar.log中,每隔600秒(或者5分钟)收集一次,持续在后台运行 。如果接下来我们想要显示这个数据我们可以用sar命令加上-f参数,例如: 这是一个非常基本的sar命令介绍 。用sar命令还可以得到许多很有用的数据,这能使得查看主机性能变得更加方便和有效 。我建议你去查看一下sar命令的说明文档从而获得更详细的方法来获得你需要的数据 。 总结: |