当前位置:首页>Linux>Linux 性能排查必备命令

Linux 性能排查必备命令

  • 2026-06-30 16:49:19
Linux 性能排查必备命令

点击蓝字

关注我们

       运维工作本质就是保证系统环境、程序进程、磁盘空间等正常运行,工作中难免需时时检查各项服务是否正常,有时遇到问题,很多人的第一反应是使用“重启大法”,但有的正式环境,服务器是不允许重启的,重启也解决不了根本问题,所以还得用一套“标准流程”定位问题。这篇文章,就是教你5分钟定位Linux服务器性能瓶颈——不需要花里胡哨的工具,系统自带的命令就够用。

先说结论(记住这句话):  🎯 性能排查的核心思路:先看整体,再看局部  ⌨️ 五步走:top看全局 → uptime看负载 → free看内存 → df/iostat看磁盘 → ss看网络  🔄 找到瓶颈 → 定位进程 → 解决问题,这才是正确的排查姿势

top   全局概览    uptime   负载情况    free   内存状态

df   磁盘空间    iostatIO   吞吐    ss   网络连接    

ps   进程快照    htop   交互增强

目 录

Part 1 CPU:服务器的大脑,跑满了就完了

Part 2 内存:不够用时系统就开始swap,卡顿随之而来

Part 3 磁盘:空间不足和IO过载是两件完全不同的事

Part 4 网络:连接数爆了还是带宽满了?

Part 5 进程:找到那只"偷吃"资源的元凶

Part 6 综合实战:10分钟定位服务器卡顿真相

Part 7 避坑指南

总结 & 命令速查

一、CPU:服务器的大脑,跑满了就完了

       CPU(中央处理器)是服务器的大脑,所有计算任务都要经过它。当CPU占用率持续超过80%,系统响应就开始变慢;超过95%,基本就是"假死"状态了。理解CPU的关键指标,是排查性能问题的第一步。

01

三个必须懂的CPU指标

📊CPU 利用率(%CPU / %usr / %sys)

    用户态CPU(%usr)= 你的应用程序消耗;系统态CPU(%sys)= 内核消耗。高用户态CPU通常是代码问题,高系统态CPU通常是IO或系统调用问题。

0-60% 正常

60-80% 关注

80%+ 告警

⚖️系统负载(Load Average)

      "正在排队等待CPU的任务数"。注意:Load不是CPU百分比!一个单核CPU,Load=1表示满了;4核CPU,Load=4才满。不要被高Load吓到,先除以CPU核数。

Load < 核数

核数 < Load < 2倍核数

Load > 2倍核数

⏱️运行队列(Run Queue)

      有多少任务在等待CPU。Linux下可通过 vmstat 1 的 r 列查看,通常每个核心的运行队列不超过4。

r < 核心数*4

核心数*4 < r < 核心数*8

r > 核心数*8

02

uptime — 3秒看系统负载

       uptime 是最简单也最常用的命令,3秒出结果,一眼看出系统"忙不忙"。

$ uptime 

 10:23:45 up 127 days,  3:42,  2 users,  load average: 2.45, 1.87, 1.52                                                                   1分钟   5分钟  15分钟

💡 Load Average 三个数字的含义:过去1分钟、5分钟、15分钟的系统平均负载。如果1分钟远高于5分钟和15分钟,说明系统刚刚开始变忙;如果三个数都很高且接近,说明系统持续高负载。

场景1:负载高低怎么判断?

     假设你的服务器有8核CPU,看到 Load Average 是 16.45, 8.32, 4.21:

$ uptime 

10:23:45 up 127 days, load average: 16.45, 8.32, 4.21 

# 解读:16.45 / 8核 = 2.06,说明平均每个核心有2个任务在排队 

# 1分钟负载(16.45)远高于15分钟(4.21),说明刚刚开始变忙 

# 结论:CPU已经超载,而且压力在上升中,需要立即排查

03

top — 实时观察CPU在干什么

       top 是Linux下最经典的性能监控工具,按CPU使用率排序,实时刷新。

$ top -c 

top - 10:25:30 up 127 days,  3:44,  2 users,  load average: 2.45, 1.87, 1.52 

Tasks: 218 total,   3 running, 215 sleeping,   0 stopped,   0 zombie

 %Cpu(s): 45.2 us,  8.3 sy,  0.0 ni, 46.1 id,  0.0 wa,  0.4 hi,  0.0 si,  0.0 st 

KiB Mem : 32768016 total, 8412340 free, 18234500 used,  6121176 buff/cache 

KiB Swap:  2097152 total,  2097152 free,        0 used. 12345678 avail Mem  

PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND 

12345 java      20   0  8.123g 2.345g  12345 S  78.2  7.5   234:56 java -jar app.jar 

6789 nginx     20   0   12345   2345   1890 S  12.1  0.7   12:34 nginx: worker 

23456 root      20   0   56789  12345   8901 S   5.4  0.4    1:23 mysqld

💡 top界面关键读数: - %Cpu(s): 45.2 us, 8.3 sy → 用户态45.2%(应用)+ 系统态8.3%(内核) - id: 46.1 → 46.1%的CPU是空闲的,这是好的 - wa: 0.0 → IO等待为0,说明CPU没在等磁盘 - PR/NI → 优先级,PR越小优先级越高,NI是nice值(-20到+19)

场景2:top快捷键操作

#top界面下常用快捷键 

P         → 按CPU使用率排序(默认) 

M         → 按内存使用排序 

N         → 按PID排序 

T         → 按CPU时间排序 

k [PID]   → 杀掉指定进程 

r [PID]   → 重新设置进程优先级(nice值) 

1         → 显示每个CPU核心的使用率 

c         → 显示完整命令路径 

d 2       → 设置刷新间隔为2秒 

q         → 退出

💡 题外话:早期面试时,面试官曾问过相关问题,如何从top命令分析判断cpu负载情况,当时没答上来,后面研究之后才搞明白,所以这也是运维工作基础及必会的。

04

htop — top的增强版,更直观

      如果你的服务器装了 htop,用它替代top体验好很多——带颜色区分、支持鼠标操作、树形进程视图。

$ htop 

# 界面分三栏: 

# 左侧:CPU使用率(每核一个条形图) 

# 中间:内存和Swap使用情况 

# 右侧:负载统计和任务数 

# 下方:快捷键提示(F1-F10) 

# 支持鼠标点击操作和方向键/PGUP/PGDN滚动进程列表

💡 htop 默认可能没安装,执行 apt install htop 或 yum install htop 即可。

二、内存:不够用时系统就开始swap,卡顿随之而来

      内存(RAM)是服务器最宝贵的资源之一。应用程序运行时,数据先加载到内存,CPU直接从内存读写,速度比磁盘快几万倍。当内存耗尽,系统会把不活跃的数据"挪到"磁盘(swap),这个过程叫换页(paging),一旦发生swap,系统就开始卡顿——因为磁盘IO和内存速度差了太多。

01

free — 快速查看内存使用情况

$ free -h              

               total        used        free      shared  buff/cache   available 

Mem:      31Gi       17Gi       8.4Gi       1.2Gi       5.6Gi        13Gi 

Swap:      2.0Gi       512Mi       1.5Gi

场景3:free -h 各字段解读

Mem(物理内存):  

total   31Gi   → 总物理内存  

used    17Gi   → 已使用(注意:这个数字包含了buff/cache) 

free    8.4Gi  → 真正完全空闲的内存  

buff/cache 5.6Gi → 缓冲区+缓存(系统为了提升性能,缓存的文件数据)  

available 13Gi → 【重要】实际可用内存 = free + buff/cache中可回收的部分 

Swap(虚拟内存/交换分区):  

total  2.0Gi  → swap总大小  

used   512Mi  → 已经被使用了512MB  

free   1.5Gi  → 剩余1.5GB  

⚠️ 如果Swap used > 0,说明物理内存已经不够用,系统在用磁盘顶替内存

💡 判断内存是否够用,关键看 available 而不是 free。Linux系统会尽可能利用空闲内存做缓存(buff/cache)提升IO性能,这些缓存随时可以回收。所以 free 很低但 available 充足,是完全正常的,不必惊慌。

场景4:什么时候该担心内存?

#正常情况:available > total * 20% 

$ free -h              

            total        used        free      buff/cache   available 

Mem:    31Gi       17Gi       8.4Gi          5.6Gi        13Gi   ← 13/31=42%,完全OK 

# 告警情况:available接近0,swap开始被使用 

$ free -h              

              total        used        free      buff/cache   available 

Mem:    31Gi       30Gi       512Mi           2Gi        300Mi   ← 只剩300MB! 

Swap:    2.0Gi       1.5Gi       512Mi                    ← swap用了1.5GB!

02

vmstat — 内存和CPU的动态全景

       vmstat(Virtual Memory Statistics)每隔N秒输出一行系统状态快照,特别适合持续观察内存趋势和换页情况。

$ vmstat 1 5 

procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- 

r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs  us  sy  id  wa  st 

2  0 524288 8412340 123456 6121176    0    0    12    15  234  567  45   8  46   0   0 

1  0 524288 8401234 123456 6122345    0    0    15    18  245  578  42  10  47   0   0 

3  0 524288 8398765 123456 6123456    0    0    18    22  256  589  48   9  42   0   0 

2  0 524288 8389999 123456 6124567    0    0    14    16  267  590  44  11  44   0   0 

2  0 524288 8381234 123456 6125678    0    0    16    20  278  601  46   8  45   0   0

场景5:vmstat关键字段解读

procs(进程):  

 r  → 运行队列长度(等待CPU的进程数)  

 b  → 不可中断睡眠进程数(通常在等IO) 

memory(内存):  

 swpd   → 已使用的虚拟内存大小 

 free   → 空闲物理内存  

 buff   → 缓冲区大小  

 cache  → 缓存大小

swap(交换分区):  

 si  → 每秒从swap读入内存的数据量(KB/s)  

 so  → 每秒从内存写入swap的数据量(KB/s)  

⚠️ si/so > 0 说明系统在swap,性能会严重下降 

io(输入输出):  

 bi  → 每秒从块设备读入的数据量  

 bo  → 每秒写入块设备的数据量 

system(系统):  

 in  → 每秒中断次数  

 cs  → 每秒上下文切换次数 

cpu(处理器):  

 us  → 用户态CPU时间百分比 

 sy  → 系统态CPU时间百分比 

 id  → 空闲CPU时间百分比  

 wa  → IO等待时间百分比

💡 内存告警信号:如果 si 和 so 持续大于0,说明系统在频繁swap,这时候即使加内存也来不及了,必须先定位是哪个进程吃光了内存。

三、磁盘:空间不足和IO过载是两件完全不同的事

      磁盘问题分两种:空间不足IO过载。空间不足好理解,满了就写不进去了;但IO过载更隐蔽——磁盘还有空间,但读写速度跟不上,导致系统卡顿。这两种问题的排查方法完全不同。

01

df — 查看磁盘空间使用情况

$ df -h 

文件系统        容量  已用  可用 已用% 挂载点 

/dev/sda1       500G  420G   80G   84% / 

/dev/sdb1       1.0T  200G  800G   20% /data 

tmpfs              16G     0      16G    0% /dev/shm

场景6:df -h 关键字段解读

文件系统  → 分区设备名 

容量      → 分区总大小 

已用      → 已使用空间 

可用      → 剩余可用空间 

已用%     → 使用百分比(⚠️ 超过80%要关注,超过90%要处理) 

挂载点    → 分区挂载的目录路径

💡 磁盘空间告警阈值: - 使用率 < 70%:安全 - 使用率 70-85%:关注,规划扩容 - 使用率 > 85%:告警,立即清理或扩容 - 使用率 > 95%:危险,可能导致服务异常

02

du — 查看目录大小

       当 df 发现某个分区快满了,就要用 du 找出是哪个目录占用最多。

#查看当前目录下各子目录大小(人性化显示,深度1层) 

$ du -h --max-depth=1 /var 

156M    /var/log 

2.1G    /var/lib 

512M    /var/cache 

2.8G    /var 

# 排序找出最大的目录

$ du -h --max-depth=1 /var | sort -hr 

2.8G    /var 

2.1G    /var/lib 

512M    /var/cache 

156M    /var/log

场景7:找出磁盘空间的"元凶"

#步骤1:先用df找出快满的分区 

$ df -h | grep -E '([8-9][0-9]|100)%' 

/dev/sda1       500G  420G   80G   84% / 

# 步骤2:从根目录开始,逐层找出大目录 

$ du -h --max-depth=1 / | sort -hr | head -10 

8.2G    /usr 

5.6G    /var 

3.2G    /home 

1.1G    /root 

... 

# 步骤3:深入大目录继续排查 

$ du -h --max-depth=1 /var | sort -hr 

2.1G    /var/lib 

512M    /var/cache 

156M    /var/log 

# 步骤4:最终定位到大文件 

$ du -h --max-depth=1 /var/log | sort -hr 

120M    /var/log/nginx 

36M     /var/log/mysql

💡 注意:du -sh /* 这种命令在根目录执行会扫描整个文件系统,可能非常慢!建议逐层排查,先看一级目录,再深入。

03

iostat — 查看磁盘IO性能

       iostat 用于监控磁盘的读写速度和IO等待时间,是判断磁盘是否过载的关键工具。

$ iostat -x 1 3 

Linux 5.4.0-80-generic (server01)   05/06/2026  _x86_64_    (8 CPU) 

avg-cpu:  %user   %nice %system %iowait  %steal   %idle                                  15.23    0.00    3.45       0.12      0.00     81.20 

Device:     rrqm/s   wrqm/s     r/s     w/s    rMB/s    wMB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util 

sda           0.00     2.50   15.00   30.00     0.60     0.12    32.00     0.02    0.44    0.38    0.47   0.22   0.99 

sdb           0.00     5.00  100.00  200.00     4.00     1.00    34.67     2.50    8.33    6.25   10.00   2.50  75.00

场景8:iostat关键字段解读

rrqm/s   → 每秒合并的读请求数     

wrqm/s   → 每秒合并的写请求数 

r/s      → 每秒完成的读IOPS 

w/s      → 每秒完成的写IOPS 

rMB/s    → 每秒读取的MB数 

wMB/s    → 每秒写入的MB数 

await    → 平均IO等待时间(毫秒)         

                 ⚠️ 超过10ms要关注,超过50ms说明磁盘压力大 

%util    → 设备利用率百分比       

                 ⚠️ 超过80%说明磁盘接近饱和

💡 磁盘IO告警信号: - await > 10ms:关注,可能有IO瓶颈 - await > 50ms:告警,IO延迟严重 - %util > 80%:磁盘接近饱和,考虑优化或升级SSD

四、网络:连接数爆了还是带宽满了?

      网络问题排查难度较高,但有两个核心指标:连接数和带宽。连接数爆了会导致"too many open files"错误;带宽满了会导致请求超时、响应慢。

01

ss — 新一代网络连接查看工具

      ss(socket statistics)是 netstat 的现代替代品,速度更快、信息更详细。

#查看所有TCP连接状态统计 

$ ss -s 

Total: 15234 (kernel 15240) 

TCP:   18456 (estab 12345, closed 5678, orphaned 234, synrecv 12, timewait 4567/0) 

Transport Total     IP        IPv6 

  *           15240     -         - 

RAW       1           0         1 

UDP       23          12        11 

TCP       18456     9234      9222 

INET      18480     9246      9234 

FRAG      0           0            0 

# 查看监听端口 

$ ss -tlnpState   Recv-Q  Send-Q  Local Address:Port  Peer Address:Port 

LISTEN  0       128     0.0.0.0:22         0.0.0.0:*     users:(("sshd",pid=1234,fd=3)) 

LISTEN  0       128     0.0.0.0:80         0.0.0.0:*     users:(("nginx",pid=5678,fd=6)) 

LISTEN  0       128     0.0.0.0:443        0.0.0.0:*     users:(("nginx",pid=5678,fd=7))

场景9:ss常用参数组合

#查看所有TCP连接(包括进程信息) 

$ ss -tnp 

 # 只看ESTAB状态的连接 

$ ss -tn state established 

# 查看某个端口的所有连接 

$ ss -tn 'sport = :80' 

# 统计各状态连接数 

$ ss -tan | awk 'NR>1 {print $1}' | sort | uniq -c  

12345 ESTAB   

4567 TIME-WAIT    

   234 LISTEN     

    12 SYN-RECV

💡 TIME_WAIT 过多怎么办?TIME_WAIT 是TCP连接关闭后的正常状态,通常会在几秒到几分钟内自动清理。如果数量达到几万级别,可能需要调整内核参数 net.ipv4.tcp_tw_reuse 和 net.ipv4.tcp_tw_recycle。

02

netstat — 经典网络统计工具

       虽然 ss 更现代,但 netstat 依然在很多老系统上使用,掌握它依然有必要。

#查看协议统计信息(替代之前的 netstat -an) 

$ netstat -s | head -30 

Ip:    Forwarding: 1    

         12345678 total packets received     

         0 forwarded    

         0 incoming packets discarded    

         12345678 incoming packets delivered    

         8765432 requests sent out 

Tcp:    

         45678 active connection openings    

         12345 passive connection openings    

         789 failed connection attempts    

         456 connection resets received    

         123 connections established    

         9876543 segments received    

         8765432 segments sent out    

         23456 segments retransmitted    

         78 bad segments received    

         456 resets sent

💡 连接数告警信号: - TIME_WAIT > 10000:关注,可能需要优化连接复用 - CLOSE_WAIT 持续增加:告警,应用可能没有正确关闭连接 - 连接数接近 ulimit 限制:危险,可能导致新连接失败

五、进程:找到那只"偷吃"资源的元凶

       找到系统瓶颈后,下一步就是定位到具体进程。ps 是进程快照工具,配合 top/htop 可以精确定位问题进程。

01

ps — 进程快照

#查看所有进程的CPU、内存使用情况(按内存排序) 

$ ps aux --sort=-%mem | head -10 

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND 

mysql     2345  5.4 12.5 4567890 1234567 ?     Sl   Apr20 234:56 /usr/sbin/mysqld 

java      6789 78.2  7.5 8765432  987654 ?     Sl   Apr25 567:89 java -jar app.jar 

nginx     5678 12.1  0.7  123456   78901 ?      S    Apr28  12:34 nginx: worker process 

# 查看进程树 

$ ps axjf 

PPID   PID  PGID   SID TTY      TPGID STAT   UID   TIME COMMAND    

0     1     1     1 ?           -1 Ss       0   0:05 /sbin/init    

1  1234  1234  1234 ?           -1 Ss       0   0:00 /usr/sbin/sshd 

1234  5678  5678  5678 ?           -1 S        0   0:00  \_ sshd: root@pts/0

场景10:找出CPU/内存消耗大户

#找出CPU占用最高的10个进程 

$ ps aux --sort=-%cpu | head -11 

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND 

java      6789 78.2  7.5 8765432  987654 ?     Sl   Apr25 567:89 java -jar app.jar 

mysql     2345  5.4 12.5 4567890 1234567 ?     Sl   Apr20 234:56 /usr/sbin/mysqld 

nginx     5678 12.1  0.7  123456   78901 ?      S    Apr28  12:34 nginx: worker process 

# 找出内存占用最高的10个进程 

$ ps aux --sort=-%mem | head -11 

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND 

mysql     2345  5.4 12.5 4567890 1234567 ?     Sl   Apr20 234:56 /usr/sbin/mysqld 

java      6789 78.2  7.5 8765432  987654 ?     Sl   Apr25 567:89 java -jar app.jar 

# 查看某个进程的详细信息 

$ ps -p 6789 -o pid,ppid,user,%cpu,%mem,vsz,rss,stat,start,time,command  

PID  PPID USER     %CPU %MEM    VSZ   RSS STAT  STARTED     TIME COMMAND 

 6789     1 root     78.2  7.5 8765432 987654 Sl    Apr25 567:89 java -jar app.jar

💡 ps aux 各字段含义: - USER:进程所有者 - PID:进程ID - %CPU:CPU使用百分比 - %MEM:内存使用百分比 - VSZ:虚拟内存大小(KB) - RSS:物理内存大小(KB) - STAT:进程状态(S=睡眠,R=运行,Z=僵尸)

六、综合实战:10分钟定位服务器卡顿真相

       学了这么多命令,关键是要会用。下面是一个完整的排查流程,教你如何在10分钟内定位服务器卡顿的真正原因。

实战场景11:完整排查流程演示

#=== 第1步:快速判断系统整体状态(30秒)=== 

$ uptime 

10:23:45 up 127 days, load average: 16.34, 8.21, 4.15 

# 解读:Load=16.34,假设16核CPU,负载率=16.34/16=102%,刚超载 

 $ free -h  

                   total        used        free              buff/cache   available 

Mem:           31Gi       29Gi       512Mi          1.2Gi        600MiSwap:            2.0Gi       1.5Gi       512Mi 

 # 解读:available只剩600MB,swap已用1.5GB,内存严重不足! 

# === 第2步:确认CPU状态(1分钟)=== 

$ top -c -b -n 1 | head -20 

top - 10:25:30 up 127 days, load average: 16.34, 8.21, 4.15 

Tasks: 218 total,   8 running, 210 sleeping,   0 stopped,   0 zombie 

%Cpu(s): 85.2 us, 12.3 sy,  0.0 ni,  0.0 id,  2.5 wa,  0.0 hi,  0.0 si,  0.0 st 

# 解读:用户态CPU 85.2%,系统态12.3%,空闲0%,wa=2.5%说明有IO等待 

# === 第3步:找出CPU/内存大户(1分钟)=== 

$ ps aux --sort=-%cpu | head -5 

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND 

java      6789 78.2  7.5 8765432  987654 ?     Sl   Apr25 567:89 java -jar app.jar 

# 解读:java进程PID=6789,吃掉78.2%的CPU和7.5%的内存 

# === 第4步:确认磁盘状态(1分钟)=== 

$ df -h | grep -E '([8-9][0-9]|100)%' 

/dev/sda1       500G  450G   50G   90% / 

# 解读:根分区使用率90%,需要清理 

$ iostat -x 1 3 | grep -A1 Device 

Device:     rrqm/s   wrqm/s     r/s     w/s    rMB/s    wMB/s avgrq-sz avgqu-sz   await  %util 

sda           0.00    15.00   50.00  100.00     2.00     0.50    40.00     3.50   23.33  75.50 

# 解读:%util=75.5%,磁盘接近饱和,await=23ms偏高 

# === 第5步:确认网络状态(1分钟)=== 

$ ss -s 

TCP:   18456 (estab 12345, closed 5678, timewait 4567/0) 

 # 解读:连接数正常,TIME_WAIT=4567正常范围 

# === 第6步:综合判断 === 

# 问题定位: 

# 1. 内存不足:available=600MB,swap用了1.5GB 

# 2. java进程异常:PID=6789,CPU 78.2%,可能是内存泄漏导致频繁GC 

# 3. 磁盘压力大:%util=75.5%,可能是swap写入导致 

# 排查建议: 

# 1. 先用 jstat -gc 6789 看java的GC情况 

# 2. 用 jmap -histo:live 6789 看对象分布 

# 3. 临时扩容swap或重启java进程 

# 4. 长期方案:增加内存或优化java程序

排查报告模板

========================================服务器性能排查报告========================================服务器:server01 (16核 / 32GB内存) 

时间:2026-05-06 10:25:30【CPU状态】 

- 负载:16.34 (102%,刚超载) 

- 用户态:85.2%  系统态:12.3%  空闲:0% 

- 判断:CPU满载 

【内存状态】 

- 物理内存:已用29GB / 32GB (可用600MB) 

- Swap:已用1.5GB / 2GB 

- 判断:内存严重不足,系统在swap 

【磁盘状态】 

- 空间:根分区 90% (450GB/500GB) 

- IO:%util=75.5%  await=23ms 

- 判断:磁盘压力大,可能是swap导致 

【网络状态】 

- 连接数:ESTAB=12345 TIME_WAIT=4567 

- 判断:正常 

【问题定位】 

- 主要原因:java进程(PID=6789)CPU异常 

- 可能原因:内存泄漏导致频繁GC 

- 紧急处理:重启java进程 

- 长期方案:优化代码 + 增加内存 

【下一步行动】 

  1. jstat -gc 6789 查看GC情况

  2. jmap -histo:live 6789 查看对象分布

  3. 重启java进程后持续观察

========================================

七、避坑指南

     性能排查中有一些常见误区,避开这些坑可以少走弯路。

坑1:只看CPU利用率,不看Load Average

       很多人看到 %CPU = 50% 就觉得CPU只用了半,没问题。但如果 Load Average = 20(8核CPU),说明有大量进程在排队等待CPU。正确的做法是:先看Load,再看CPU利用率。

坑2:只看 free,不看 available

     free -h 显示 free = 500MB 就觉得内存不够了?其实 available = 10GB!Linux会把空闲内存用作缓存,available 才是真正可用的内存。正确的做法是:看 available,不看 free。

坑3:磁盘空间够用就不看IO

      磁盘还有100GB空间,但 iostat 显示 %util = 95%,说明磁盘读写已经饱和。空间和IO是两回事:空间不够用 df 看,IO不够用 iostat 看。

坑4:看到高CPU就重启服务

      CPU高只是表象,真正原因可能是内存泄漏、死循环、数据库慢查询...重启只能临时缓解,问题还会重现。正确的做法是:先用 ps/top 定位进程,再分析进程内部状态。

坑5:忽略Swap的影响

     系统慢,查CPU和内存都正常,最后发现是Swap在疯狂读写。Swap导致的性能下降是隐蔽的,一定要用 vmstat 或 free 检查 si/so 是否大于0。

总结 & 命令速查

核心排查流程

第一步:uptime 看负载,判断系统整体忙不忙

第二步:free -h 看内存,关键看 available 和 swap

第三步:df -h 看空间,iostat -x 看IO

第四步:ss -s 看网络,ss -tlnp 看端口

第五步:ps aux --sort 定位问题进程

收藏这篇文章,下次服务器卡了,照着流程走一遍!

还有什么问题?

欢迎评论区分享,我们一起讨论。欢迎~点赞 · 在看 · 转发

LO

VE

怦然心动--往期推荐 

文本操作命令

权限三剑客

Linux 命令与网络

Linux 入门与对比

VMware 从零到上网 — 搭环境必读

下方扫码 关注我们

极客代码库

微信号丨

jkdmk_007

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-07-04 08:11:53 HTTP/2.0 GET : https://f.mffb.com.cn/a/491876.html
  2. 运行时间 : 0.107955s [ 吞吐率:9.26req/s ] 内存消耗:4,700.02kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=26089e3af309cb05eccd21ea80625014
  1. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/provider.php ( 0.19 KB )
  23. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/common.php ( 0.03 KB )
  27. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/app.php ( 0.95 KB )
  30. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cache.php ( 0.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/console.php ( 0.23 KB )
  32. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cookie.php ( 0.56 KB )
  33. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/database.php ( 2.48 KB )
  34. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/filesystem.php ( 0.61 KB )
  36. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/lang.php ( 0.91 KB )
  37. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/log.php ( 1.35 KB )
  38. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/middleware.php ( 0.19 KB )
  39. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/route.php ( 1.89 KB )
  40. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/session.php ( 0.57 KB )
  41. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/trace.php ( 0.34 KB )
  42. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/view.php ( 0.82 KB )
  43. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/event.php ( 0.25 KB )
  44. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/service.php ( 0.13 KB )
  46. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/AppService.php ( 0.26 KB )
  47. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/services.php ( 0.14 KB )
  53. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/Request.php ( 0.09 KB )
  84. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/middleware.php ( 0.25 KB )
  86. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/route/app.php ( 1.72 KB )
  100. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
  104. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/BaseController.php ( 2.05 KB )
  105. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/runtime/temp/067d451b9a0c665040f3f1bdd3293d68.php ( 11.98 KB )
  140. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000705s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000813s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000312s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000266s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000500s ]
  6. SELECT * FROM `set` [ RunTime:0.000210s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000632s ]
  8. SELECT * FROM `article` WHERE `id` = 491876 LIMIT 1 [ RunTime:0.000781s ]
  9. UPDATE `article` SET `lasttime` = 1783123914 WHERE `id` = 491876 [ RunTime:0.013169s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 67 LIMIT 1 [ RunTime:0.000290s ]
  11. SELECT * FROM `article` WHERE `id` < 491876 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000490s ]
  12. SELECT * FROM `article` WHERE `id` > 491876 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000456s ]
  13. SELECT * FROM `article` WHERE `id` < 491876 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.012999s ]
  14. SELECT * FROM `article` WHERE `id` < 491876 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.002406s ]
  15. SELECT * FROM `article` WHERE `id` < 491876 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.006416s ]
0.109507s