当前位置:首页>Linux>Linux系统性能调优实战:CPU、内存、IO、网络全方位优化

Linux系统性能调优实战:CPU、内存、IO、网络全方位优化

  • 2026-04-13 22:04:28
Linux系统性能调优实战:CPU、内存、IO、网络全方位优化

关注「Raymond运维」公众号,并设为「星标」,也可以扫描底部二维码加入群聊,第一时间获取最新内容,不再错过精彩内容。

Linux系统性能调优实战:CPU、内存、IO、网络全方位优化

一、概述

1.1 背景介绍

在当今高并发、大数据量的互联网环境中,Linux服务器的性能直接影响业务的稳定性和用户体验。系统性能问题往往表现为响应慢、CPU飙高、内存溢出、磁盘IO瓶颈或网络延迟等。本文将从CPU、内存、磁盘IO、网络四个维度,系统性地介绍Linux性能调优的方法论和实战技巧,帮助运维工程师快速定位和解决性能问题。

1.2 技术特点

  • • 全面性:覆盖CPU、内存、IO、网络四大核心领域
  • • 系统性:从监控分析到调优落地的完整闭环
  • • 实战性:基于真实生产环境的优化经验
  • • 工具化:充分利用perf、vmstat、iostat等专业工具
  • • 可量化:每个优化点都有明确的指标和预期效果

1.3 适用场景

  • • 场景一:高并发Web服务器性能优化
  • • 场景二:数据库服务器IO性能调优
  • • 场景三:大数据计算集群资源管理
  • • 场景四:容器化环境资源隔离与限制

1.4 环境要求

组件
版本要求
说明
操作系统
CentOS 7+/Ubuntu 20.04+/RHEL 8+
推荐CentOS 7.9或Rocky Linux 8
内核版本
4.18+
支持cgroups v2和新特性
硬件配置
4核8G以上
根据业务负载调整
工具包
sysstat, perf, bcc-tools
性能分析必备工具

二、详细步骤

2.1 准备工作

◆ 2.1.1 系统检查

# 查看系统版本
cat /etc/os-release

# 查看内核版本
uname -r

# 查看CPU信息
lscpu

# 查看内存信息
free -h
cat /proc/meminfo

# 查看磁盘信息
lsblk
df -Th

# 查看网络配置
ip addr
ss -tuln

◆ 2.1.2 安装性能分析工具

# CentOS/RHEL
sudo yum install -y sysstat perf iotop htop dstat nload iftop

# 安装BCC工具集(需要内核4.1+)
sudo yum install -y bcc-tools

# Ubuntu/Debian
sudo apt install -y sysstat linux-tools-common linux-tools-$(uname -r) \
    iotop htop dstat nload iftop bpfcc-tools

◆ 2.1.3 启用性能数据采集

# 启用sysstat数据采集
sudo systemctl enable sysstat
sudo systemctl start sysstat

# 配置采集频率(每1分钟采集一次)
sudo sed -i 's/^ENABLED="false"/ENABLED="true"/' /etc/default/sysstat

# 查看历史数据
sar -u 1 10  # CPU使用率
sar -r 1 10  # 内存使用率
sar -d 1 10  # 磁盘IO
sar -n DEV 1 10  # 网络流量

2.2 CPU性能调优

◆ 2.2.1 CPU性能分析

# 实时查看CPU使用情况
top -d 1
htop

# 查看每个CPU核心的使用率
mpstat -P ALL 1 5

# 查看进程CPU使用详情
pidstat -u 1 5

# 使用perf分析CPU热点
sudo perf top -g
sudo perf record -g -p <PID> -- sleep 30
sudo perf report

# 查看CPU中断分布
cat /proc/interrupts

# 查看软中断
cat /proc/softirqs

关键指标说明

  • • %user:用户态CPU使用率,高表示应用程序繁忙
  • • %system:内核态CPU使用率,高可能是系统调用频繁
  • • %iowait:IO等待占比,高表示存在IO瓶颈
  • • %steal:虚拟化环境中被其他VM占用的CPU时间

◆ 2.2.2 CPU调优参数

# 查看当前CPU调度策略
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

# 设置CPU为性能模式(服务器推荐)
for cpu in /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor; do
echo"performance" | sudotee$cpu
done

# 关闭CPU节能模式(永久生效)
sudo grubby --update-kernel=ALL --args="intel_pstate=disable"
# /etc/sysctl.conf CPU相关优化
# 内核调度器优化
kernel.sched_migration_cost_ns = 5000000
kernel.sched_autogroup_enabled = 0

# 增加进程数限制
kernel.pid_max = 65535
kernel.threads-max = 256000

◆ 2.2.3 CPU亲和性设置

# 查看进程CPU亲和性
taskset -p <PID>

# 将进程绑定到CPU 0-3
taskset -pc 0-3 <PID>

# 启动时指定CPU亲和性
taskset -c 0-3 ./your_application

# 中断亲和性设置(将网卡中断绑定到特定CPU)
# 查看网卡中断号
cat /proc/interrupts | grep eth0

# 设置中断亲和性(绑定到CPU 0)
echo 1 | sudotee /proc/irq/<IRQ_NUM>/smp_affinity

2.3 内存性能调优

◆ 2.3.1 内存性能分析

# 查看内存使用概况
free -h

# 详细内存信息
cat /proc/meminfo

# 查看进程内存使用
ps aux --sort=-%mem | head -20

# 使用vmstat监控
vmstat 1 10

# 查看NUMA内存分布
numactl --hardware
numastat

# 查看内存碎片
cat /proc/buddyinfo

# 查看Slab缓存
sudo slabtop
cat /proc/slabinfo

vmstat关键指标

  • • si/so:swap换入换出,非0表示内存不足
  • • buff/cache:缓冲区和缓存大小
  • • free:空闲内存

◆ 2.3.2 内存调优参数

# /etc/sysctl.conf 内存相关优化

# 控制swap使用倾向(0-100,服务器建议10-30)
vm.swappiness = 10

# 脏页回写阈值
vm.dirty_ratio = 40
vm.dirty_background_ratio = 10

# 脏页过期时间(毫秒)
vm.dirty_expire_centisecs = 3000
vm.dirty_writeback_centisecs = 500

# 内存过度提交策略(0=启发式,1=总是允许,2=禁止)
vm.overcommit_memory = 0
vm.overcommit_ratio = 50

# 最小空闲内存(KB)
vm.min_free_kbytes = 262144

# 缓存回收压力
vm.vfs_cache_pressure = 100

# 禁用OOM Killer对特定进程的影响
# echo -17 > /proc/<PID>/oom_adj

# 应用配置
sudo sysctl -p

◆ 2.3.3 NUMA优化

# 查看NUMA拓扑
numactl --hardware

# 查看NUMA内存使用统计
numastat -m

# 进程绑定到指定NUMA节点
numactl --cpunodebind=0 --membind=0 ./your_application

# MySQL NUMA优化示例
numactl --interleave=all mysqld

# 查看进程NUMA分布
numastat -p <PID>

# 系统级NUMA配置
echo 0 | sudotee /proc/sys/vm/zone_reclaim_mode

◆ 2.3.4 大页内存配置

# 查看当前大页配置
cat /proc/meminfo | grep -i huge

# 配置大页数量(每个大页2MB)
echo 1024 | sudotee /proc/sys/vm/nr_hugepages

# 永久配置(/etc/sysctl.conf)
vm.nr_hugepages = 1024

# 挂载hugetlbfs
sudomkdir -p /mnt/hugepages
sudo mount -t hugetlbfs nodev /mnt/hugepages

# 透明大页配置(数据库场景建议关闭)
cat /sys/kernel/mm/transparent_hugepage/enabled
echo never | sudotee /sys/kernel/mm/transparent_hugepage/enabled
echo never | sudotee /sys/kernel/mm/transparent_hugepage/defrag

# 永久禁用透明大页
# 在/etc/rc.local中添加
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag

2.4 磁盘IO调优

◆ 2.4.1 IO性能分析

# iostat监控磁盘IO
iostat -xz 1 10

# 查看进程IO使用
sudo iotop -o

# pidstat监控进程IO
pidstat -d 1 5

# 查看块设备信息
lsblk -d -o NAME,ROTA,SCHED,RQ-SIZE,DISC-MAX

# 查看IO调度器
cat /sys/block/sda/queue/scheduler

# blktrace跟踪IO
sudo blktrace -d /dev/sda -o - | blkparse -i -

iostat关键指标

  • • %util:设备使用率,接近100%表示饱和
  • • await:平均IO等待时间(ms)
  • • svctm:平均服务时间
  • • r/s, w/s:每秒读写次数
  • • rkB/s, wkB/s:每秒读写数据量

◆ 2.4.2 IO调度器优化

# 查看当前IO调度器
cat /sys/block/sda/queue/scheduler

# SSD推荐使用none或mq-deadline
echo"none" | sudotee /sys/block/sda/queue/scheduler

# HDD推荐使用mq-deadline
echo"mq-deadline" | sudotee /sys/block/sda/queue/scheduler

# 永久配置(GRUB)
# 编辑 /etc/default/grub
GRUB_CMDLINE_LINUX="elevator=mq-deadline"
sudo grub2-mkconfig -o /boot/grub2/grub.cfg

# 调整队列深度
echo 256 | sudotee /sys/block/sda/queue/nr_requests

# 调整预读大小(KB)
blockdev --setra 4096 /dev/sda
echo 4096 | sudotee /sys/block/sda/queue/read_ahead_kb

◆ 2.4.3 文件系统优化

# 查看文件系统挂载选项
mount | grep sda

# XFS优化挂载选项
# /etc/fstab
/dev/sda1 /data xfs defaults,noatime,nodiratime,nobarrier,logbufs=8 0 0

# EXT4优化挂载选项
/dev/sda1 /data ext4 defaults,noatime,nodiratime,barrier=0,data=writeback 0 0

# 调整文件描述符限制
# /etc/security/limits.conf
* soft nofile 655360
* hard nofile 655360
* soft nproc 655360
* hard nproc 655360

# 系统级文件描述符
echo"fs.file-max = 6553600" >> /etc/sysctl.conf
sysctl -p

◆ 2.4.4 磁盘写入策略

# 查看磁盘写入缓存状态
sudo hdparm -W /dev/sda

# 启用写入缓存(提升性能,但掉电有风险)
sudo hdparm -W1 /dev/sda

# 关闭写入缓存(数据安全优先)
sudo hdparm -W0 /dev/sda

# SSD TRIM支持
# 检查是否支持
lsblk -D

# 手动执行TRIM
sudo fstrim -v /

# 配置定时TRIM(systemd timer)
sudo systemctl enable fstrim.timer
sudo systemctl start fstrim.timer

2.5 网络性能调优

◆ 2.5.1 网络性能分析

# 查看网络连接状态
ss -s
ss -tuln

# 查看网络接口统计
ip -s link show eth0

# 实时流量监控
iftop -i eth0
nload eth0

# 查看TCP连接状态分布
ss -ant | awk '{print $1}' | sort | uniq -c

# 查看网络错误和丢包
netstat -i
cat /proc/net/dev

# 网络延迟测试
ping -c 10 target_host
mtr target_host

# TCP连接跟踪
cat /proc/sys/net/netfilter/nf_conntrack_count
cat /proc/sys/net/netfilter/nf_conntrack_max

◆ 2.5.2 网络内核参数优化

# /etc/sysctl.conf 网络优化配置

# TCP缓冲区大小
net.core.rmem_default = 262144
net.core.rmem_max = 16777216
net.core.wmem_default = 262144
net.core.wmem_max = 16777216
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216

# TCP连接优化
net.ipv4.tcp_max_syn_backlog = 65535
net.core.somaxconn = 65535
net.core.netdev_max_backlog = 65535

# TIME_WAIT优化
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp_max_tw_buckets = 65535

# TCP keepalive
net.ipv4.tcp_keepalive_time = 600
net.ipv4.tcp_keepalive_intvl = 30
net.ipv4.tcp_keepalive_probes = 3

# 连接跟踪
net.netfilter.nf_conntrack_max = 1048576
net.netfilter.nf_conntrack_tcp_timeout_established = 3600

# 本地端口范围
net.ipv4.ip_local_port_range = 1024 65535

# TCP Fast Open
net.ipv4.tcp_fastopen = 3

# 启用BBR拥塞控制(内核4.9+)
net.core.default_qdisc = fq
net.ipv4.tcp_congestion_control = bbr

# 应用配置
sudo sysctl -p

◆ 2.5.3 网卡队列优化

# 查看网卡队列数
ethtool -l eth0

# 设置多队列(根据CPU核数)
sudo ethtool -L eth0 combined 8

# 查看网卡Ring Buffer
ethtool -g eth0

# 增大Ring Buffer
sudo ethtool -G eth0 rx 4096 tx 4096

# 查看网卡offload功能
ethtool -k eth0

# 启用硬件卸载
sudo ethtool -K eth0 gro on gso on tso on

# 中断合并(降低CPU中断)
sudo ethtool -C eth0 rx-usecs 100 tx-usecs 100

# RPS/RFS设置(软件多队列)
echo"ff" | sudotee /sys/class/net/eth0/queues/rx-0/rps_cpus
echo 32768 | sudotee /proc/sys/net/core/rps_sock_flow_entries
echo 4096 | sudotee /sys/class/net/eth0/queues/rx-0/rps_flow_cnt

2.6 cgroups资源隔离

◆ 2.6.1 cgroups v1配置

# 查看cgroups挂载
mount | grep cgroup

# 创建cgroup
sudomkdir -p /sys/fs/cgroup/cpu/myapp
sudomkdir -p /sys/fs/cgroup/memory/myapp

# CPU限制(限制为50%)
echo 50000 | sudotee /sys/fs/cgroup/cpu/myapp/cpu.cfs_quota_us
echo 100000 | sudotee /sys/fs/cgroup/cpu/myapp/cpu.cfs_period_us

# 内存限制(限制为4G)
echo 4294967296 | sudotee /sys/fs/cgroup/memory/myapp/memory.limit_in_bytes

# 将进程加入cgroup
echo <PID> | sudotee /sys/fs/cgroup/cpu/myapp/cgroup.procs
echo <PID> | sudotee /sys/fs/cgroup/memory/myapp/cgroup.procs

# 查看cgroup状态
cat /sys/fs/cgroup/cpu/myapp/cpu.stat
cat /sys/fs/cgroup/memory/myapp/memory.usage_in_bytes

◆ 2.6.2 cgroups v2配置

# 检查cgroups v2是否启用
mount | grep cgroup2

# 创建cgroup
sudomkdir -p /sys/fs/cgroup/myapp

# 启用控制器
echo"+cpu +memory +io" | sudotee /sys/fs/cgroup/cgroup.subtree_control

# CPU限制(最大50%,权重100)
echo"50000 100000" | sudotee /sys/fs/cgroup/myapp/cpu.max
echo 100 | sudotee /sys/fs/cgroup/myapp/cpu.weight

# 内存限制
echo 4G | sudotee /sys/fs/cgroup/myapp/memory.max
echo 3G | sudotee /sys/fs/cgroup/myapp/memory.high

# IO限制(设备主:次号,如8:0为/dev/sda)
echo"8:0 rbps=100000000 wbps=50000000" | sudotee /sys/fs/cgroup/myapp/io.max

# 将进程加入cgroup
echo <PID> | sudotee /sys/fs/cgroup/myapp/cgroup.procs

◆ 2.6.3 使用systemd管理资源

# 创建systemd服务配置
# /etc/systemd/system/myapp.service
[Unit]
Description=My Application
After=network.target

[Service]
Type=simple
ExecStart=/usr/bin/myapp
Restart=always

# 资源限制
CPUQuota=200%
MemoryLimit=4G
MemoryHigh=3G
IOReadBandwidthMax=/dev/sda 100M
IOWriteBandwidthMax=/dev/sda 50M

# 安全设置
NoNewPrivileges=yes
ProtectSystem=strict
ProtectHome=yes

[Install]
WantedBy=multi-user.target

# 应用配置
sudo systemctl daemon-reload
sudo systemctl start myapp

# 查看资源使用
systemctl status myapp
systemd-cgtop

2.7 启动和验证

◆ 2.7.1 应用配置

# 加载所有sysctl配置
sudo sysctl -p /etc/sysctl.conf

# 验证配置已生效
sysctl -a | grep -E "swappiness|dirty_ratio|tcp_max_syn_backlog"

# 检查limits配置
ulimit -a

# 验证IO调度器
cat /sys/block/*/queue/scheduler

◆ 2.7.2 性能基准测试

# CPU基准测试
sysbench cpu --threads=4 --time=60 run

# 内存基准测试
sysbench memory --threads=4 --time=60 run

# 磁盘IO基准测试
# 顺序写
fio --name=seqwrite --rw=write --bs=1M --size=4G --numjobs=1 --time_based --runtime=60

# 随机读写
fio --name=randread --rw=randread --bs=4K --size=1G --numjobs=4 --time_based --runtime=60

# 网络基准测试
# 服务端
iperf3 -s

# 客户端
iperf3 -c <server_ip> -t 30 -P 4

三、示例代码和配置

3.1 完整sysctl配置

# 文件路径:/etc/sysctl.d/99-performance.conf

#############################################
# Linux 系统性能调优配置
# 适用于高并发服务器场景
#############################################

#========== 内核参数 ==========
kernel.sched_migration_cost_ns = 5000000
kernel.sched_autogroup_enabled = 0
kernel.pid_max = 65535
kernel.threads-max = 256000

#========== 内存参数 ==========
vm.swappiness = 10
vm.dirty_ratio = 40
vm.dirty_background_ratio = 10
vm.dirty_expire_centisecs = 3000
vm.dirty_writeback_centisecs = 500
vm.overcommit_memory = 0
vm.overcommit_ratio = 50
vm.min_free_kbytes = 262144
vm.vfs_cache_pressure = 100
vm.zone_reclaim_mode = 0

#========== 文件系统 ==========
fs.file-max = 6553600
fs.nr_open = 6553600
fs.inotify.max_user_watches = 524288

#========== 网络参数 ==========
# 缓冲区
net.core.rmem_default = 262144
net.core.rmem_max = 16777216
net.core.wmem_default = 262144
net.core.wmem_max = 16777216
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216

# 连接队列
net.ipv4.tcp_max_syn_backlog = 65535
net.core.somaxconn = 65535
net.core.netdev_max_backlog = 65535

# TIME_WAIT
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp_max_tw_buckets = 65535

# Keepalive
net.ipv4.tcp_keepalive_time = 600
net.ipv4.tcp_keepalive_intvl = 30
net.ipv4.tcp_keepalive_probes = 3

# 连接跟踪
net.netfilter.nf_conntrack_max = 1048576
net.netfilter.nf_conntrack_tcp_timeout_established = 3600

# 端口范围
net.ipv4.ip_local_port_range = 1024 65535

# TCP优化
net.ipv4.tcp_fastopen = 3
net.ipv4.tcp_slow_start_after_idle = 0
net.ipv4.tcp_no_metrics_save = 1
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_orphans = 65535

# BBR拥塞控制
net.core.default_qdisc = fq
net.ipv4.tcp_congestion_control = bbr

# ARP优化
net.ipv4.neigh.default.gc_stale_time = 120
net.ipv4.neigh.default.gc_thresh1 = 1024
net.ipv4.neigh.default.gc_thresh2 = 4096
net.ipv4.neigh.default.gc_thresh3 = 8192

3.2 性能监控脚本

#!/bin/bash
# 文件名:system_monitor.sh
# 功能:系统性能实时监控

LOG_DIR="/var/log/perf_monitor"
mkdir -p $LOG_DIR

# 日期格式
DATE=$(date +%Y%m%d_%H%M%S)

echo"========== 系统性能报告 $DATE =========="

# CPU信息
echo -e "\n[CPU Usage]"
mpstat -P ALL 1 1 | tail -n +4

# 内存信息
echo -e "\n[Memory Usage]"
free -h
echo""
vmstat 1 3

# 磁盘IO
echo -e "\n[Disk IO]"
iostat -xz 1 3 | tail -n +4

# 网络流量
echo -e "\n[Network Traffic]"
sar -n DEV 1 3 | grep -E "eth|ens|eno"

# TCP连接状态
echo -e "\n[TCP Connections]"
ss -ant | awk '{print $1}' | sort | uniq -c | sort -rn

# TOP进程
echo -e "\n[Top CPU Processes]"
ps aux --sort=-%cpu | head -10

echo -e "\n[Top Memory Processes]"
ps aux --sort=-%mem | head -10

# 保存到日志
exec > >(tee -a $LOG_DIR/perf_$DATE.log)

3.3 实际应用案例

◆ 案例一:MySQL数据库服务器优化

场景描述:MySQL服务器在高并发时出现IO等待高、响应慢的问题

优化配置

# /etc/sysctl.d/mysql-tuning.conf

# 内存优化
vm.swappiness = 1
vm.dirty_ratio = 80
vm.dirty_background_ratio = 5

# 关闭透明大页
echo never > /sys/kernel/mm/transparent_hugepage/enabled

# IO优化
# 使用deadline调度器
echo"mq-deadline" > /sys/block/sda/queue/scheduler
echo 256 > /sys/block/sda/queue/nr_requests

# NUMA优化启动MySQL
numactl --interleave=all mysqld

验证效果

  • • IO等待从30%降低到5%
  • • 平均响应时间从50ms降低到10ms
  • • TPS提升3倍

◆ 案例二:高并发Web服务器优化

场景描述:Nginx服务器需要支撑100万并发连接

优化配置

# /etc/sysctl.d/nginx-tuning.conf

# 文件描述符
fs.file-max = 2097152

# TCP优化
net.core.somaxconn = 65535
net.ipv4.tcp_max_syn_backlog = 65535
net.core.netdev_max_backlog = 65535
net.ipv4.ip_local_port_range = 1024 65535
net.ipv4.tcp_tw_reuse = 1

# 缓冲区
net.core.rmem_max = 67108864
net.core.wmem_max = 67108864
net.ipv4.tcp_rmem = 4096 87380 33554432
net.ipv4.tcp_wmem = 4096 65536 33554432

# 连接跟踪(如果使用iptables)
net.netfilter.nf_conntrack_max = 2097152

# limits配置
# /etc/security/limits.conf
nginx soft nofile 1048576
nginx hard nofile 1048576

四、最佳实践和注意事项

4.1 最佳实践

◆ 4.1.1 性能优化原则

  • • 先测量后优化:使用工具收集基线数据,量化优化效果
  • • 逐项调整验证:每次只调整一个参数,验证效果后再进行下一项
  • • 生产前测试:在测试环境充分验证后再应用到生产
  • • 保留回滚方案:记录原始配置,确保可以快速回滚

◆ 4.1.2 资源预留

# 为系统进程预留资源
# cgroups限制应用程序最大使用80%的资源
echo 80000 > /sys/fs/cgroup/cpu/apps/cpu.cfs_quota_us

# 预留内存给系统
vm.min_free_kbytes = 262144  # 256MB

◆ 4.1.3 监控告警

# Prometheus告警规则示例
groups:
-name:system_alerts
rules:
-alert:HighCPUUsage
expr:100-(avg(irate(node_cpu_seconds_total{mode="idle"}[5m]))*100)>80
for:5m
labels:
severity:warning
annotations:
summary:"CPU使用率超过80%"

-alert:HighMemoryUsage
expr:(1-node_memory_MemAvailable_bytes/node_memory_MemTotal_bytes)*100>85
for:5m
labels:
severity:warning
annotations:
summary:"内存使用率超过85%"

-alert:HighDiskIOWait
expr:avg(irate(node_cpu_seconds_total{mode="iowait"}[5m]))*100>20
for:5m
labels:
severity:warning
annotations:
summary:"IO等待超过20%"

4.2 注意事项

◆ 4.2.1 配置注意事项

⚠️ 警告:不当的内核参数调整可能导致系统不稳定

  • • 避免将swappiness设为0(会导致OOM时无法使用swap缓冲)
  • • 关闭透明大页仅适用于数据库等特定场景
  • • BBR拥塞控制需要内核4.9+支持
  • • 修改conntrack_max要同时关注内存消耗

◆ 4.2.2 常见错误

错误现象
原因分析
解决方案
Too many open files
文件描述符限制不足
调整limits.conf和fs.file-max
Connection refused
somaxconn过小或服务未启动
增大somaxconn,检查服务状态
nf_conntrack: table full
连接跟踪表满
增大nf_conntrack_max
TCP: request_sock_TCP: Possible SYN flooding
SYN队列满
增大tcp_max_syn_backlog

◆ 4.2.3 版本兼容性

  • • BBR:需要Linux 4.9+内核
  • • cgroups v2:需要Linux 4.5+,完整支持需要5.2+
  • • io_uring:需要Linux 5.1+
  • • BPF工具:需要Linux 4.1+,推荐4.9+

五、故障排查和监控

5.1 故障排查

◆ 5.1.1 CPU问题排查

# 查找CPU占用高的进程
top -c -o %CPU

# 查看进程的线程CPU使用
top -H -p <PID>

# 使用perf分析热点函数
sudo perf top -p <PID>
sudo perf record -g -p <PID> -- sleep 30
sudo perf report

# 查看是否有D状态进程(不可中断睡眠)
ps aux | awk '$8=="D"'

# 分析系统调用
strace -c -p <PID>

问题:CPU sys高(内核态CPU高)

# 诊断
perf top  # 查看内核函数

# 常见原因
# 1. 系统调用频繁
# 2. 锁竞争
# 3. 内存页面错误

# 解决方案
# 减少系统调用,使用批量操作
# 优化锁粒度
# 增加内存或优化内存访问模式

◆ 5.1.2 内存问题排查

# 查找内存占用高的进程
ps aux --sort=-%mem | head -20

# 查看进程内存映射
pmap -x <PID>

# 查看Slab缓存
sudo slabtop

# 检查是否有内存泄漏
# 持续监控进程内存增长
whiletruedo ps -p <PID> -o pid,rss,vsz; sleep 60; done

# 查看OOM记录
dmesg | grep -i "out of memory"
journalctl -k | grep -i "oom"

问题:内存持续增长(疑似泄漏)

# 使用valgrind检测
valgrind --leak-check=full ./your_app

# 使用smem分析
smem -p -s rss

# 分析/proc/<PID>/smaps
cat /proc/<PID>/smaps | grep -E "^(Rss|Pss|Shared|Private)"

◆ 5.1.3 IO问题排查

# 找出IO占用高的进程
sudo iotop -o

# 查看进程IO详情
pidstat -d 1 5

# 查看磁盘使用情况
iostat -xz 1

# 查看文件系统IO
sudo fatrace

# 使用blktrace深入分析
sudo blktrace -d /dev/sda -o trace
blkparse -i trace.blktrace.0 > trace.txt

问题:iowait高

# 诊断步骤
# 1. 确认哪个磁盘繁忙
iostat -xz 1

# 2. 找出IO大户
sudo iotop -o

# 3. 分析IO模式
# 如果是大量小随机IO,考虑使用SSD
# 如果是顺序大IO,检查是否有不必要的全表扫描

# 解决方案
# - 使用SSD替代HDD
# - 调整IO调度器
# - 增加缓存
# - 优化应用IO模式

◆ 5.1.4 网络问题排查

# 查看网络连接状态
ss -s
ss -ant | awk '{print $1}' | sort | uniq -c

# 查看丢包情况
netstat -i
cat /proc/net/dev | column -t

# 查看TCP重传
netstat -s | grep -i retrans

# 网络延迟分析
mtr <target_host>

# 抓包分析
tcpdump -i eth0 -nn -s0 -w capture.pcap

# 查看conntrack状态
conntrack -S
cat /proc/sys/net/netfilter/nf_conntrack_count

问题:大量TIME_WAIT

# 查看TIME_WAIT数量
ss -ant | grep TIME-WAIT | wc -l

# 解决方案
# /etc/sysctl.conf
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp_max_tw_buckets = 65535

sysctl -p

5.2 监控方案

◆ 5.2.1 监控指标

指标名称
正常范围
告警阈值
说明
CPU使用率
<70%
>80%
持续5分钟以上触发告警
CPU iowait
<10%
>20%
IO等待过高表示磁盘瓶颈
内存使用率
<80%
>85%
注意区分used和available
Swap使用
0
>0
任何swap使用都应关注
磁盘使用率
<80%
>85%
注意inode使用率
磁盘await
<10ms
>50ms
SSD应<1ms
网络丢包率
0%
>0.1%
任何丢包都应排查
TCP重传率
<1%
>3%
高重传表示网络质量差

◆ 5.2.2 Prometheus + Node Exporter

# 安装Node Exporter
wget https://github.com/prometheus/node_exporter/releases/download/v1.6.1/node_exporter-1.6.1.linux-amd64.tar.gz
tar xzf node_exporter-1.6.1.linux-amd64.tar.gz
sudomv node_exporter-1.6.1.linux-amd64/node_exporter /usr/local/bin/

# 创建systemd服务
cat > /etc/systemd/system/node_exporter.service << 'EOF'
[Unit]
Description=Node Exporter
After=network.target

[Service]
Type=simple
ExecStart=/usr/local/bin/node_exporter
Restart=always

[Install]
WantedBy=multi-user.target
EOF

sudo systemctl daemon-reload
sudo systemctl enable node_exporter
sudo systemctl start node_exporter

5.3 备份配置

#!/bin/bash
# 系统配置备份脚本

BACKUP_DIR="/backup/sysconfig/$(date +%Y%m%d)"
mkdir -p $BACKUP_DIR

# 备份sysctl配置
cp -a /etc/sysctl.conf $BACKUP_DIR/
cp -a /etc/sysctl.d/ $BACKUP_DIR/

# 备份limits配置
cp -a /etc/security/limits.conf $BACKUP_DIR/
cp -a /etc/security/limits.d/ $BACKUP_DIR/

# 备份网络配置
cp -a /etc/sysconfig/network-scripts/ $BACKUP_DIR/ 2>/dev/null
cp -a /etc/netplan/ $BACKUP_DIR/ 2>/dev/null

# 备份当前运行参数
sysctl -a > $BACKUP_DIR/sysctl_runtime.txt
ulimit -a > $BACKUP_DIR/ulimit.txt

echo"配置已备份到: $BACKUP_DIR"

六、总结

6.1 技术要点回顾

  • • ✅ CPU调优:调度策略、亲和性绑定、中断均衡
  • • ✅ 内存调优:swap策略、脏页参数、NUMA优化、大页内存
  • • ✅ IO调优:调度器选择、预读设置、文件系统优化
  • • ✅ 网络调优:缓冲区、连接参数、BBR拥塞控制

6.2 进阶学习方向

  1. 1. eBPF/BCC工具:深入理解内核运行机制
  2. 2. 内核参数源码分析:理解参数的实现原理
  3. 3. 性能工程方法论:系统性的性能分析方法
  4. 4. 容器性能优化:cgroups、namespace的深入应用

6.3 参考资料

  • • Linux Performance - Brendan Gregg的性能分析网站
  • • 内核文档 - Linux内核官方文档
  • • Red Hat Performance Tuning Guide

附录

A. 命令速查表

# CPU分析
top -c                    # 查看进程CPU
mpstat -P ALL 1           # 各CPU核心使用率
pidstat -u 1              # 进程CPU使用
perf top                  # CPU热点分析

# 内存分析
free -h                   # 内存概况
vmstat 1                  # 内存和进程统计
pmap -x <PID>             # 进程内存映射
numastat                  # NUMA统计

# IO分析
iostat -xz 1              # 磁盘IO统计
iotop -o                  # 进程IO排行
pidstat -d 1              # 进程IO统计

# 网络分析
ss -s                     # 连接统计摘要
ss -ant                   # TCP连接详情
sar -n DEV 1              # 网络流量
netstat -s                # 协议统计

B. 内核参数分类

类别
参数前缀
说明
内核
kernel.*
进程、调度相关
虚拟内存
vm.*
内存管理相关
文件系统
fs.*
文件描述符、inotify等
网络核心
net.core.*
网络缓冲区、队列
IPv4
net.ipv4.*
TCP/IP参数
网络过滤
net.netfilter.*
连接跟踪等

C. 术语表

术语
英文
解释
上下文切换
Context Switch
CPU从一个进程/线程切换到另一个
缺页中断
Page Fault
访问不在物理内存中的页面
IO等待
IO Wait
CPU等待IO完成的时间占比
脏页
Dirty Page
已修改但未写入磁盘的内存页
NUMA
Non-Uniform Memory Access
非一致性内存访问架构
BBR
Bottleneck Bandwidth and RTT
Google开发的拥塞控制算法

WeChat group

为了方便大家更好的交流运维等相关技术问题,创建了微信交流群,需要加群的小伙伴们可以扫一扫下面的二维码加我为好友拉您进群(备注:加群)。

代码仓库网址
Githubhttps://github.com/raymond999999
Giteehttps://gitee.com/raymond9

Blog

博客网址
CSDN
https://blog.csdn.net/qq_25599925
稀土掘金https://juejin.cn/user/4262187909781751
知识星球https://wx.zsxq.com/group/15555885545422
阿里云社区https://developer.aliyun.com/profile/snzh3xpxaf6sg
腾讯云社区https://cloud.tencent.com/developer/user/11823619
华为云社区https://developer.huaweicloud.com/usercenter/mycommunity/dynamics

访问博客网站,查看更多优质原创内容。

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-04-14 15:14:24 HTTP/2.0 GET : https://f.mffb.com.cn/a/486371.html
  2. 运行时间 : 0.099479s [ 吞吐率:10.05req/s ] 内存消耗:4,860.97kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=23f0c78fae85ad3f262f0cc5a9408592
  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.000595s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000740s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000300s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000276s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000514s ]
  6. SELECT * FROM `set` [ RunTime:0.000195s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000613s ]
  8. SELECT * FROM `article` WHERE `id` = 486371 LIMIT 1 [ RunTime:0.000528s ]
  9. UPDATE `article` SET `lasttime` = 1776150864 WHERE `id` = 486371 [ RunTime:0.009385s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 67 LIMIT 1 [ RunTime:0.000659s ]
  11. SELECT * FROM `article` WHERE `id` < 486371 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.006074s ]
  12. SELECT * FROM `article` WHERE `id` > 486371 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000503s ]
  13. SELECT * FROM `article` WHERE `id` < 486371 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000870s ]
  14. SELECT * FROM `article` WHERE `id` < 486371 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.000738s ]
  15. SELECT * FROM `article` WHERE `id` < 486371 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.007047s ]
0.102030s