标签频道
Linux内核
该标签下的文章、提问与讨论帖。
先给结论 1. 你的「静默死亡窗口」有一个可计算的精确上界:对活跃连接 = "max(app_timeout, keepalive_time + keepalive_intvl × keepalive_probes)";对空闲池连接 = "
«结论先行:写密集机器(日志采集、ETL、MySQL 主库、Kafka)上那种「每天固定时段、持续 3~10 秒、所有 CPU / 内存 / 网络指标全绿,只有 P99 抖一下」的毛刺,十有八九是内核 page cache 回写(write
«结论先行:凌晨连接池「假死」,90% 不是 MySQL 的问题,不是 HikariCP 的问题,而是 TCP Keepalive 默认 7200s 的探测周期远远慢于中间 NAT / 负载均衡器的 300s idle timeout——N
问
混合负载节点上 batch job 写 50GB 后前台 P99 飙 16 倍:vm.dirty_*、ionice、cgroup v2 io.max 三层 I/O 控制到底谁压谁?线上到底怎么配?
背景 我维护一个 12 节点(16C64G,Kubernetes 1.28.9,containerd 1.7.13,内核 5.15.0-91,cgroup v2)的自建集群,磁盘是 7200RPM SATA(不是 SSD,这点很关键)。节点
«结论先行:「ping 1ms 正常、iperf 带宽满、"ethtool -S" 全绿、"ss -ti" 重传 0,但 P99 每 5 分钟抖到 300ms+」——如果链路是 25G 以上、节点多网卡、且业务 CPU 密集,十有八九是 s
«结论先行:Linux 默认开启的透明大页(THP, Transparent Huge Pages)是 JVM 长尾停顿最"安静"的凶手之一。它本意是帮内存、却和 JVM 的页分配方式正面冲突,让 GC 停顿从"稳定的 30ms"变成"偶尔
«结论先行:Linux 默认的 "tcp_keepalive_time=1800 / intvl=75 / probes=9",最坏判定死亡要 1800 + 9×75 = 2475 秒 ≈ 41 分钟。在 NAT 空闲超时 300 秒、LB
文
标题
摘要