Linux系统性能检测常用命令

Stella981
• 阅读 752

##查看CPU数量

  • 总核数 = 物理CPU个数 X 每颗物理CPU的核数

  • 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数

  • 查看物理CPU个数:

    cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l

  • 查看每个物理CPU中core的个数(即核数):

    cat /proc/cpuinfo| grep "cpu cores"| uniq

  • 查看逻辑CPU的个数:

    cat /proc/cpuinfo| grep "processor"| wc -l

##CPU运行良好的指标

  • CPU利用率:User Time <= 70%, System Time <=35%, User Time + System Time <= 70%
  • 上下文切换:与CPU利用率相关联,如果CPU利用率良好,较频繁的上下文切换也可以

详情参照 ‘操作系统CPU上下文切换’:http://blog.csdn.net/xifeijian/article/details/8209783

  • 可运行进程数:每个处理器的可运行队列<=3个线程。

###vmstat工具使用

vmstat 2 5  //每两秒统计一次,连续统计5次

打印输出:

Linux系统性能检测常用命令

字段含义介绍:

  • 进程:
  1. r:就绪态的进程数,等待CPU调度运行。
  2. b:处于不可中断睡眠状态的进程数。
  • CPU:
  1. us:运行非内核态代码占用时间比(用户时间)。
  2. sy:运行内核代码占用时间比(系统时间)。
  3. id:CPU空闲时间比。
  4. wa:等待IO时间。
  • 内存(KB):
  1. swpd:虚拟内存已使用量。
  2. free:空闲内存量。
  3. buffer:已使用的buffer占用内容量。
  4. cache:已使用的cache占用内存量。
  5. si:数据从 SWAP 读取到 RAM(swap in)的大小。
  6. so:数据从 RAM 写到 SWAP(swap out)的大小。

##内存运行良好的指标

  • si(swap in)= 0 且so(swap out)= 0
  • 应用程序实际使用内存/系统物理内存 <= 70%

###free工具使用

free -m

打印输出:

Linux系统性能检测常用命令

具体选项含义参考>>

##网络运行良好的指标 UDP:接收、发送缓冲区不长时间有等待处理的网络包。

TCP:不会出现因为缓存不足而出现丢包,协议层通过重传机制来保证丢失的包到达接收方。TCP更多的专注重传率。

###netstat工具

netstat -lunp

输出:

Linux系统性能检测常用命令

RecvQ、SendQ为0,或者短时间内有数值是比较正常的。

查看UPD/TCP丢包情况

netstat -us/-ts

UDP关注‘packet receive errors’,若数值不断增加,则正在丢包。

Linux系统性能检测常用命令

TCP服务可以通过(segments retransmited) / (segments send out)来计算重传率。

Linux系统性能检测常用命令

###磁盘IO工具

iostat -d -x -k 2 10

Linux系统性能检测常用命令

字段说明:https://linux.die.net/man/1/iostat

###文件描述符 查看系统运行打开的最大文件描述符数

cat /proc/sys/fs/file-max

查询当前用户一个进程可以打开的最大文件描述符数

ulimit -n 

##引文:

  1. http://www.cnblogs.com/emanlee/p/3587571.html
  2. http://www.linuxidc.com/Linux/2016-07/133504.htm
  3. http://www.cnblogs.com/dongzhiquan/p/3789199.html
  4. http://www.cnblogs.com/dongzhiquan/p/3789199.html
点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
待兔 待兔
4个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Stella981 Stella981
3年前
Linux查看CPU型号及内存频率及其它信息的命令
http://www.latelee.org/usinggnulinux/linuxcpumeminfo.html这篇文章写一下以前整理的查看系统资源、性能的一些命令。本来那时就想系统地整理的,但事多人懒没去做,现在就简单写写。查看CPU:\cat/proc/cpuinfo该命令可以查看系统CPU有多少个核,频率,特性等等
Wesley13 Wesley13
3年前
CPU核数怎么计算?
物理cpu数主板上实际插入的cpu数量,可以数不重复的physicalid有几个(physicalid)Linuxcat/proc/cpuinfo|grep"physicalid"|sort|uniq|wclcpu核数单块CPU上面能处理数据的芯片组的数量,
Stella981 Stella981
3年前
Linux下查看CPU型号,内存大小,硬盘空间的命令(详解)
1查看CPU1.1查看CPU个数\cat/proc/cpuinfo|grep"physicalid"|uniq|wcl2\\uniq命令:删除重复行;wc–l命令:统计行数\\1.2查看CPU核数\cat/proc/cpuinfo|grep"cpucores"|uniqc
Stella981 Stella981
3年前
Linux服务器性能查看分析调优
转自https://www.cnblogs.com/acelee/p/6628079.html一linux服务器性能查看1.1cpu性能查看1、查看物理cpu个数:cat/proc/cpuinfo|grep"physicalid"|sort|un
Wesley13 Wesley13
3年前
Java多线程之线程池配置合理线程数
目录代码查看公司服务器或阿里云是几核的合理线程数配置之CPU密集型合理线程数配置之IO密集型1\.代码查看公司服务器或阿里云是几核的要合理配置线程数首先要知道公司服务器或阿里云是几核的代码查看服务器核数:System.out.println(Runtime.getRuntime().availableProc
Stella981 Stella981
3年前
Linux日常运维小结
1\.如何看当前Linux系统有几颗物理CPU和每颗CPU的核数?物理cpu个数:cat/proc/cpuinfo|grepc'physicalid'CPU一共有多少核:grepcprocessor/proc/cpuinfo将CPU的总核数除以物理CPU的个数,得到每颗CPU的核数。2\.查看系统负载有两个常用的命
Wesley13 Wesley13
3年前
CPU,并行,并发,多线程
1.CPUI5处理器有四核四线程和四核八线程两种:(1).四核四线程:就是CPU有四个物理核心,每个核心一个时间内只处理一个线程调度,任务管理器中只显示4个CPU图表;(2)四核八线程:使用了超线程技术,把一个物理核心,模拟成两个逻辑核心,任务管理器中会显示8个CPU图表;I7处理器的八核八线程:有八个物理核心可以
十月飞翔 十月飞翔
2年前
将CPU 打满到接近 100% 长跑高CPU负载脚本 + 消耗大内存脚本
可直接下载附件上传到需要测试的服务器执行lscpu查看cpu核数,将内核数量,作为参数在执行以下脚本时添加上。运行命令:./killcpu.sh88是cpu核数,脚本后面跟cpu核数,执行完毕后去/root/logs下查log,可根据需要自己决定测试时间。!/bin/bashfilenamekillcpu.shc