运维
已收录文章:26篇
-
Redis 设置了 EXPIRE,业务却发现旧缓存没有在整点消失,通常不是 TTL 失效,而是过期判定、删除时机和监控口径混在了一起。本文从过期键残留现场出发,拆解惰性删除与定期扫描的边界,给出可复查的命令、通知配置和生产处理建议。331 收藏
-
Linux 的 page cache 占用高不等于内存泄漏,本文从 free、top、slab 和回收验证入手,区分缓存、进程匿名内存与内核对象的边界。331 收藏
-
Go 服务把日志写到固定文件后,文件会持续变大,直接删除又可能让进程继续写入已删除文件。本文从一个小型 Go 日志服务开始,配置 logrotate 的轮转、保留、压缩和 copytruncate,再用状态文件与实际文件大小验证配置是否真的生效。310 收藏
-
Linux 文件监控收到 IN_Q_OVERFLOW,不只是把 max_queued_events 调大就结束了。本文从队列溢出的含义、内核参数、消费者处理速度和恢复流程入手,给出可核对的排查命令与重建监控状态的方法。305 收藏
-
非 root 进程绑定 80 端口,不只取决于 setcap 是否出现,还要核对内核低端口范围、文件能力、解释器启动方式和实际进程能力。本文用一组可复现命令把判断链串起来。295 收藏
-
清理 MySQL 大表历史数据时,直接 DELETE 大范围记录容易造成锁等待和事务膨胀。本文用主键游标、固定批次、执行计划和可暂停的回滚窗口,搭出一套可观察的分批清理方案。273 收藏
-
/run 或容器临时目录写满时,df -h 看到的 tmpfs 并不等于一块独立硬盘。本文用 findmnt、df -h、df -i 和 mount 参数核对 tmpfs 的挂载、容量、inode 与内存边界。273 收藏
-
用一个可回滚的备份任务示例,讲清 Linux 服务定时器如何用 OnCalendar 定时、用 Persistent 补跑错过的任务,并通过服务状态、日历解析和 journalctl 完成验证。237 收藏
-
Linux 7.2 已进入主线发布阶段,但 mainline、stable 与长期支持版本承担的风险不同。本文按生产升级的判断顺序,说明如何核对版本来源、准备回滚、做最小验证,再决定是否采用。222 收藏
-
用 findmnt --verify 在重启前检查 fstab 的语法、设备路径和挂载选项,区分配置可解析、设备可见与真正挂载成功这三个验收层次。188 收藏
-
服务 unit 里写了 LimitNOFILE,进程却仍然拿到旧限制,通常不是参数拼错,而是改错了 unit 层级、管理器没有重新读取,或服务仍在使用旧 PID。本文用服务管理器命令、配置校验和 /proc/
/limits 做一套可回滚的验收流程。 185 收藏 -
服务 unit 里写了 LimitNOFILE,进程却仍然拿到旧限制,通常不是参数拼错,而是改错了 unit 层级、管理器没有重新读取,或服务仍在使用旧 PID。本文用服务管理器命令、配置校验和 /proc/
/limits 做一套可回滚的验收流程。 179 收藏