性能排查
已收录文章:43篇
-
进程的 rchar、wchar 很大,不代表磁盘真的读写了同样多的数据。本文用 /proc/PID/io 拆开用户态读写、实际块设备读写和取消写入,给出一套可复查的 Linux I/O 排查方法。224 收藏
-
vmstat 输出里的 r 和 b 经常被误读成 CPU 使用率。本文从运行队列、不可中断睡眠和 load average 的关系入手,给出一套从现象到证据的 Linux 性能排查方法。222 收藏
-
Golang · Go问答 | 2个月前 | 连接池 · 性能排查 · database/sql · Go问答 · Go 连接池 DBStats sql.DB WaitCount SetMaxOpenConns用一个 Go 后端小实验解释 sql.DB 的 WaitCount 为什么增长,如何从 InUse、Idle、WaitDuration 判断连接池是否太小,并给出 SetMaxOpenConns、SetMaxIdleConns 的调参和验证清单。214 收藏
-
Redis 连接池偶发超时,不能只把超时时间调大。本文按命令执行、连接占用和网络往返三层排查,结合 INFO clients、CLIENT LIST 与 SLOWLOG 区分服务端慢、连接池耗尽和客户端等待。182 收藏
-
把 time.After 放进高频循环,短时间内不断创建定时器,任务退出时还可能留下难以观察的等待路径。本文从一个轮询超时场景出发,拆解定时器创建、触发、退出和验证边界,并给出可回收的 time.NewTimer 写法。179 收藏
-
Golang · Go教程 | 3星期前 | HTTP · go · 连接池 · 性能排查 · net/http · http.server 连接泄漏 Go ConnState StateIdle HTTP长连接用 http.Server.ConnState 观察 Go HTTP 连接从 StateNew 到 StateClosed 的状态变化,区分慢请求、Keep-Alive 和未收尾连接,并给出计数、超时与复核方法。125 收藏
-
Java 批量校验邮箱、手机号等字段时,反复编译 Pattern 和把 Matcher 跨线程复用,都会让接口延迟抬头。本文从 Pattern、Matcher 的职责边界出发,对比错误写法与复用写法,再用 JMH 风格基准和业务验收检查性能收益。102 收藏