Linux细节 - 常用Linux下排查服务器性能命令

Linux网络排查利器:ss命令原理、实战与性能分析 在Linux系统运维和网络问题排查中,理解Socket(套接字)的工作原理是基础。Socket作为网络通信的端点,其状态直接反映了应用的网络连接情况。传统工具如netstat在处理大规模并发时存在性能瓶颈,而ss命令通过直接读取内核的/proc/net/信息,实现了毫秒级的连接状态透视,极大提升了排查效率。这一技术价值在于能够精准过滤连接状态、分析队列堆积,并快速定位端口占用或异常连接,广泛应用于高并发服务监控、DDOS攻击迹象分析和防火墙规则验证等场景。本文聚焦ss命令,结合网络连接、TCP状态机等热词, 阅读详情

uptime

说明:此命令可以快速查看系统的负载值。负载值分别为1分钟、5分钟、15分钟。

[root@localhost ~]# uptime
 16:32:06 up 45 min,  2 users,  load average: 0.00, 0.01, 0.05


dmesg | tail

说明:dmesg命令主要是进程崩溃的时候记录内核的相关信息日志。

[root@localhost ~]# dmesg | tail
[   10.964269] sd 2:0:0:0: Attached scsi generic sg0 type 0
[   10.967002] sr 1:0:0:0: Attached scsi generic sg1 type 5
[   11.458428] ip_tables: (C) 2000-2006 Netfilter Core Team
[   11.515758] nf_conntrack version 0.5.0 (16384 buckets, 65536 max)
[   11.548737] ip6_tables: (C) 2000-2006 Netfilter Core Team
[   11.636783] Ebtables v2.0 registered
[   11.670765] Bridge firewalling registered
[   12.143372] e1000: eno16777736 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None
[   12.146198] IPv6: ADDRCONF(NETDEV_UP): eno16777736: link is not ready
[   12.146220] IPv6: ADDRCONF(NETDEV_CHANGE): eno16777736: link becomes ready


vmstat 1

说明:vmstat会不停输出系统重要的指标信息。

r:等待cpu资源的进程数。如果这个数值大于CPU的个数,则CPU使用已经饱和。

free:内存相关信息。

si, so:交换区写入和读取的数量。如果这个数据不为0,说明系统已经在使用交换区(swap),机器物理内存已经不足。

us, sy, id, wa, st:这些都代表了CPU时间的消耗,它们分别表示用户时间(user)、系统时间(sys)、空闲时间(idle)、IO等待时间(wait)和被偷走的时间(stolen,一般被其他虚拟机消耗)

[root@localhost ~]# vmstat 1
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 1  0      0 3186572    884 108636    0    0     6     1   14   21  0  0 100  0  0
 0  0      0 3185436    884 108636    0    0     0     0 1064  530  0  3 96  0  0
 3  0      0 3184680    884 108636    0    0     0     0  716  373  0  3 97  0  0
 0  0      0 3183876    884 108636    0    0     0     0  902  430  0  3 97  0  0
 0  0      0 3183056    884 108636    0    0     0     0  974  493  0  2 98  0  0
 0  0      0 3181996    884 108636    0    0     0     0 1130  591  0  3 97  0  0
 0  0      0 3180568    884 108636    0    0     0     0  903  490  0  4 96  0  0
 0  0      0 3179952    884 108636    0    0     0     0  967  523  0  4 96  0  0

mpstat -P ALL 1

说明:查看CPU的使用情况。如果单个CPU使用率非常大,则有可能某个线程比较繁忙。

[root@localhost togo]# mpstat -P ALL 1
Linux 3.10.0-123.el7.x86_64 (localhost.localdomain) 	2016年01月14日 	_x86_64_	(4 CPU)

17时36分02秒  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
17时36分03秒  all    0.00    0.00    1.79    0.00    0.00    0.51    0.00    0.00    0.00   97.70
17时36分03秒    0    0.00    0.00    3.00    0.00    0.00    1.00    0.00    0.00    0.00   96.00
17时36分03秒    1    0.00    0.00    2.08    0.00    0.00    3.12    0.00    0.00    0.00   94.79
17时36分03秒    2    0.00    0.00    1.00    0.00    0.00    0.00    0.00    0.00    0.00   99.00
17时36分03秒    3    0.00    0.00    1.02    0.00    0.00    0.00    0.00    0.00    0.00   98.98

17时36分03秒  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
17时36分04秒  all    0.25    0.00    1.51    0.00    0.00    1.01    0.00    0.00    0.00   97.23
17时36分04秒    0    0.00    0.00    1.02    0.00    0.00    0.00    0.00    0.00    0.00   98.98
17时36分04秒    1    1.03    0.00    1.03    0.00    0.00    2.06    0.00    0.00    0.00   95.88
17时36分04秒    2    0.00    0.00    2.00    0.00    0.00    1.00    0.00    0.00    0.00   97.00
17时36分04秒    3    0.00    0.00    1.00    0.00    0.00    0.00    0.00    0.00    0.00   99.00


pidstat 1

说明:pidstat命令动态输出进程的CPU占用率。

[root@localhost togo]# pidstat 1
Linux 3.10.0-123.el7.x86_64 (localhost.localdomain) 	2016年01月14日 	_x86_64_	(4 CPU)

17时41分02秒   UID       PID    %usr %system  %guest    %CPU   CPU  Command
17时41分03秒     0       520    0.00    0.94    0.00    0.94     3  xfsaild/dm-1
17时41分03秒     0      3210    0.00    9.43    0.00    9.43     0  togo
17时41分03秒     0      3257    0.94    2.83    0.00    3.77     3  pidstat

17时41分03秒   UID       PID    %usr %system  %guest    %CPU   CPU  Command
17时41分04秒     0      3210    1.00    9.00    0.00   10.00     0  togo
17时41分04秒     0      3257    1.00    3.00    0.00    4.00     3  pidstat

iostat -xz 1

说明:iostat主要检查磁盘的IO情况。

r/s, w/s, rkB/s, wkB/s:分别表示每秒读写次数和每秒读写数据量

await:IO操作的平均等待时间,单位是毫秒。如果这个数值过大,可能是硬件设备遇到了瓶颈或者出现故障。

avgqu-sz:向设备发出的请求平均数量。如果这个数值大于1,可能是硬件设备已经饱和

%util:设备利用率。这个数值表示设备的繁忙程度,经验值是如果超过60,可能会影响IO性能

[root@localhost togo]# iostat -xz 1
Linux 3.10.0-123.el7.x86_64 (localhost.localdomain) 	2016年01月14日 	_x86_64_	(4 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.04    0.00    0.60    0.01    0.00   99.36

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
fd0               0.00     0.00    0.00    0.00     0.00     0.00     8.00     0.00   44.00   44.00    0.00  44.00   0.00
sda               0.11     0.04    0.74    0.54    18.33     2.26    32.13     0.00    1.08    0.92    1.31   0.42   0.05
scd0              0.00     0.00    0.00    0.00     0.01     0.00     8.00     0.00    2.25    2.25    0.00   2.25   0.00
dm-0              0.00     0.00    0.03    0.00     0.14     0.00     8.00     0.00    0.26    0.26    0.00   0.26   0.00
dm-1              0.00     0.00    0.74    0.51    15.05     1.97    27.32     0.00    1.26    0.87    1.82   0.40   0.05


free –m

说明:free命令主要查看使用的内存情况。

[root@localhost togo]# free -m
             total       used       free     shared    buffers     cached
Mem:          3785       1704       2081          9          0        106
-/+ buffers/cache:       1597       2188
Swap:         2047          0       2047

sar -n DEV 1

说明:查看网络设备的吞吐量

rxpck/s:每秒钟接收的数据包
txpck/s:每秒钟发送的数据包
rxbyt/s:每秒钟接收的字节数
txbyt/s:每秒钟发送的字节数
rxcmp/s:每秒钟接收的压缩数据包
txcmp/s:每秒钟发送的压缩数据包
rxmcst/s:每秒钟接收的多播数据包

[root@localhost togo]# sar -n DEV 1
Linux 3.10.0-123.el7.x86_64 (localhost.localdomain) 	2016年01月14日 	_x86_64_	(4 CPU)

17时54分54秒     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
17时54分55秒 eno16777736    957.00    863.00    760.60   1110.15      0.00      0.00      0.00
17时54分55秒        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00

17时54分55秒     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
17时54分56秒 eno16777736   1066.00   1004.00    844.21   1323.74      0.00      0.00      0.00
17时54分56秒        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00


sar -n TCP,ETCP 1

说明:查看TCP连接状况

active/s:每秒本地发起的TCP连接数,既通过connect调用创建的TCP连接;

passive/s:每秒远程发起的TCP连接数,即通过accept调用创建的TCP连接;

retrans/s:每秒TCP重传数量;

iseg/s:数据接收量

oseg/s:数据发送量

[root@localhost togo]# sar -n TCP,ETCP 1
Linux 3.10.0-123.el7.x86_64 (localhost.localdomain) 	2016年01月14日 	_x86_64_	(4 CPU)

17时59分10秒  active/s passive/s    iseg/s    oseg/s
17时59分11秒      0.00      0.00    641.00    987.00

17时59分10秒  atmptf/s  estres/s retrans/s isegerr/s   orsts/s
17时59分11秒      0.00      0.00      0.00      0.00      0.00

17时59分11秒  active/s passive/s    iseg/s    oseg/s
17时59分12秒      0.00      0.00    577.00    878.00

17时59分11秒  atmptf/s  estres/s retrans/s isegerr/s   orsts/s
17时59分12秒      0.00      0.00      0.00      0.00      0.00


top

说明:点击见详细

[root@localhost togo]# top
top - 18:03:27 up  2:17,  3 users,  load average: 0.04, 0.12, 0.14
Tasks: 512 total,   3 running, 509 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.1 us,  1.6 sy,  0.0 ni, 97.8 id,  0.0 wa,  0.0 hi,  0.5 si,  0.0 st
KiB Mem:   3876532 total,  1744984 used,  2131548 free,      884 buffers
KiB Swap:  2097148 total,        0 used,  2097148 free.   108992 cached Mem

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                                                       
 3210 root      20   0 1739500 1.023g    696 S   9.9 27.7   4:51.56 togo                                                                                                          
 3334 root      20   0  123924   1992   1168 R   1.0  0.1   0:00.22 top 


常用命令:

grep '123 ' test.log.2016-05-04 |wc -l #搜索文件






WRFDA如何读取风云四号A 星的GIIRS数据? 🏆本文收录于 《全栈 Bug 调优(实战版)》 专栏。专栏聚焦真实项目中的各类疑难 Bug,从成因剖析 → 排查路径 → 解决方案 → 预防优化全链路拆解,形成一套可复用、可沉淀的实战知识体系。无论你是初入职场的开发者,还是负责复杂项目的资深工程师,都可以在这里构建一套属于自己的「问题诊断与性能调优」方法论,助你稳步进阶、放大技术价值。 阅读详情

相关推荐

告别环境配置烦恼:Docker容器化一站式搭建Zephyr RTOS开发环境

本文详细介绍了如何使用Docker容器化技术一站式搭建Zephyr RTOS开发环境,彻底解决环境配置不一致、依赖冲突等难题。通过预构建镜像、数据卷挂载和实战编译示例,帮助开发者快速获得隔离、一致且可复现的嵌入式开发环境,大幅提升开发效率和团队协作体验。

n8m7b6v5c4的博客 189

linux开机显示详细信息,Linux命令(23):demsg命令-显示开机信息(示例代码)

[ 14.173511] Ebtables v2.0 registered[ 14.211151] Bridge firewalling registered[ 15.018274] IPv6: ADDRCONF(NETDEV_UP): eno16777736: link is not ready[ 15.023187] e1000: eno16777736 NIC Link is...

weixin_35710005的博客 1541

基于8086微机原理数字钟计时器系统设计

*单片机设计介绍,基于8086微机原理数字钟计时器系统设计。

2201_75940997的博客 1279

ubuntu防火墙各种配置及启动异常解决方案

ubuntu防火墙各种配置及启动异常解决方案

人生若只初相见@的博客 2万+

Redis TLS 加密传输实战:从证书生成到安全配置

本文详细介绍了为Redis启用TLS加密传输的完整实战流程。从阐述TLS加密的必要性开始,逐步指导读者生成自签名CA和服务器证书,并深入解析Redis服务端的核心安全配置,包括端口设置、认证模式与性能优化。最后,提供了主流客户端连接示例及生产环境下的排错与运维最佳实践,帮助构建安全的Redis通信通道。

weixin_29274969的博客 515

体系结构学习-6-超标量处理器

 MIPS32-5段流水线采用了指令级并行方式(5个流水段同时运行5条指令)提升系统吞吐率,是一种标量处理器(CPI≥1CPI \ge 1CPI≥1),但是一个周期一条指令以及无法满足现代计算机需求了。 超标量处理器(Superscalar) 1、基本思想:增强指令集并行,让每个周期执行更多指令,实现 CPI<1CPI<1CPI<1 。(IPC=1/CPIIPC = 1...

qq_40891899的博客 1213

处理segment fault 的一种方法

//////////////////////////////////////////////////////////////////// // author: hjjdebug //////////////////////////////////////////////////////////////////// segment fault 是内存访问错误。 如果想不怕segmen

hjjdebug的专栏 2万+

Lion优化器试验笔记

Lion优化器试验笔记

jacke121的专栏 847

【Linux服务器】CPU问题排查

Linux服务端的CPU问题排查

gma999的博客 1871

多算法数据预测——BP、ELM、LSTM、BiLSTM和SAELSTM,附Matlab源码

本文将为大家介绍基于BP、ELM、LSTM、BiLSTM和SAELSTM多种算法的数据预测,并提供相应的Matlab源码。SAELSTM算法是一种结合自动编码器和LSTM神经网络的深度学习方法,用于时间序列数据预测。ELM算法是一种单层前向神经网络,在单次训练过程中直接产生输出权重,从而具有快速学习和良好推广性能。多算法数据预测——BP、ELM、LSTM、BiLSTM和SAELSTM,附Matlab源码。总体来看,采用多种算法进行数据预测可以提高预测准确率,并可根据不同场景选择适合的算法。

qq_39605374的博客 861

毕业设计:丹麦电力电价预测预测未来24小时的电价pytorch+lstm+历史特征和价格+时间序列 电价预测模型资源 完整代码数据可直接运行

毕业设计:丹麦电力电价预测预测未来24小时的电价pytorch+lstm+历史特征和价格+时间序列 电价预测模型资源 完整代码数据可直接运行

356

【Linux服务器】内存问题排查

Linux服务器内存问题解决思路总结

gma999的博客 4499

《嵌入式最全面试题-Offer直通车》目录

嵌入式领域蓬勃发展,嵌入式工程师成为众多科技企业争抢的热门人才。如果你渴望在嵌入式面试中脱颖而出,成功斩获心仪的 offer,那么《嵌入式最全面试题 - Offer直通车》将是你的绝佳选择。本专栏是优快云是热门专栏,100多篇文章,总字数过百万。每月新增订阅用户过百,现在是优惠价9.9元,后面要逐渐恢复原价,早订阅早受益。本专栏精心整理了众多超万字的精华内容,总计达数十万字的嵌入式面试题总结。涵盖从嵌入式基础知识到各大厂面试真题,从驱动开发到操作系统,从硬件到软件等各个方面。

大模型大数据攻城狮的专栏 8400

Linux生产环境常用工具及常用网络故障排查命令

dig 是 DNS 查询的“瑞士军刀”精准: 可以查询特定类型的记录,并向特定的 DNS 服务器发起查询。详细: 提供完整的 DNS 响应信息,包括 TTL、状态标志等,便于深入分析。强大: 支持跟踪、反向查询等高级功能。灵活: 通过丰富的选项可以控制输出的格式和内容,既适合人工阅读,也适合脚本处理。掌握dig命令是诊断网络问题、管理域名和理解互联网工作原理的必备技能。

2201_75988916的博客 843

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

故障排查常用命令汇总

Linux下四大性能指标 1.内存 空闲内存 Swap使用率 缓冲和缓存 Slabs描述的内核使用量 活动和非活动内存 2.CPU CPU使用率:CPU的使用率 平均负载:单位时间内的活跃线程数 用户时间:CPU在用户进程上的实际百分比 系统时间:CPU在内核上花费的实际百分比 空闲时间:系统处于在等待IO操作上的时间总和 等待:CPU花费在等待IO操作上的时间总和 Nice时间:CPU优先执行的时间百分比 3.磁盘 磁盘使用率 IO饱和度 IOPS 吞吐量 响应时间 4.网络带宽 吞吐量: 延迟:网络发起

CuiXiaoY的博客 431

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

【服务器知识】linux服务器内存或者CPU利用率占用高占满,如何排查原因核解决?

摘要:Linux服务器内存与CPU高利用率排查指南 本文针对Linux服务器内存利用率达90%的情况进行分析,指出Linux内存管理机制会利用空闲内存作缓存来提升性能,高内存利用率不一定代表问题。建议通过free -h命令重点关注available列而非free列,若可用内存不足可使用top或ps命令排查具体进程。对于CPU高利用率问题,推荐使用top命令按CPU排序定位问题进程,并通过ps命令查看进程详情。文中还提供了常见内存/CPU消耗大户的示例和详细排查步骤。

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 2293

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Linux 网络性能监控与故障排查终极宝典

本文介绍了Linux网络性能监控与故障排查的核心方法。主要内容包括: 网络性能核心指标:带宽、吞吐量、延时、PPS等关键参数的定义和意义 网络接口配置检查: 使用ifconfig或ip命令查看网络状态 重点关注MTU、IP地址、收发统计及错误信息 详细讲解ip命令的使用方法,包括网卡管理、IP地址配置、路由表操作等 套接字与连接分析: 介绍ss命令替代netstat的优势 解释Recv-Q和Send-Q在不同状态下的含义 提供常用ss命令示例,包括TCP/UDP连接查看、端口监听状态检查等 文章提供了实用的

jokerMingge的博客 1613

linux利用curl命令高效排查网络与应用问题

linux利用curl命令高效排查网络与应用问题

bjzhang75的博客 1037

Linux中检查网络问题的常用命令

本文介绍了在Linux系统中常用的网络故障排查命令,包括ping、traceroute、ifconfig/ip、netstat、nslookup/dig、curl/wget和tcpdump等。这些命令可以帮助我们快速诊断和解决各种网络问题,保证网络连接的稳定性和可靠性。希望本文能够帮助大家更好地理解和应用这些命令,提高网络故障排查的效率和准确性。更多Python学习内容:ipengtao.com↙点击下方“阅读原文”查看更多。

GitHub_miao的博客 1636

linux+性能排查,Linux系统性能排查基础

此文已由作者李晶授权网易云社区发布。欢迎访问上一期运维季刊中,我们重点从CPU方面分析了Linux系统性能瓶颈,除了CPU之外,内存、IO和网络也是常见的造成系统出现问题的根源,本篇我们继续介绍如何从这三个子系统来排查Linux整个系统的性能问题。1. 内存Linux系统实现了非常复杂同时又非常高效的内存管理。通过虚拟内存机制,对于每个进程而言,都可以使用整个地址空间。物理内存是系统硬件提供的内存...

weixin_30126409的博客 204

16个必须熟悉的linux服务器监控命令

本原创文章属于《Linux大棚》博客。 博客地址为http://roclinux.cn。 文章作者为roc。 == 原文:16 Linux Server Monitoring Commands You Really Need To Know 为了让大家能更直观的学习这些命令,添加了更多的解释内容、实例和外部链接。 == 在使用Linux服务器的过程中,有16个命令可以帮...

azi8860的博客 131

Linux系统信息收集与性能排查:从命令组合到诊断思维的实战指南

在Linux系统管理与运维中,信息收集是诊断和解决性能问题的核心技能。理解系统状态需要掌握从内核版本、负载、内存使用到进程、磁盘和网络连接的全方位监控原理。通过组合使用uptime、free、top、ps、df、ss等基础命令,可以快速构建系统健康度的整体视图。这些技术对于排查服务卡顿、性能瓶颈和资源耗尽等常见问题具有重要价值,广泛应用于服务器运维、应用部署和故障排除场景。本文聚焦于Linux系统信息收集的实战技巧,通过命令组合与诊断思维,帮助读者从被动执行命令转变为主动理解系统状态,提升问题定位效率。

weixin_34199764的博客 302

【Linux技术专题】「夯实基本功系列」带你一同学习和实践操作Linux服务器必学的Shell指令(排查问题指令 - 上)

在线上排查问题时,查询日志、查看系统配置和分析操作系统信息是至关重要的。这些操作可以帮助我们深入了解软件和服务的兼容性,并解决潜在的问题。在本次学习中,我们将介绍并深入学习一些我在处理类似问题时常用的指令。通过掌握这些指令,你将能够更加高效地定位和解决线上问题,提高系统的稳定性和性能。让我们一同进入这个学习过程吧!主要的指令分为一下几大类。

世界上并没有完美的程序,但是我们并不因此而沮丧,因为写程序就是一个不断追求完美的过程。 1133
上一篇: Linux c 开发 - 常用Linux下c语言调试方法
下一篇: Nginx源码分析 - 初探Nginx的架构(01)
老码农zhuli
老码农zhuli 领域专家: 后端开发技术领域 领域专家: 后端开发技术领域
博客等级 码龄14年 2456粉丝 312原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值