Category

系统运维

当前分类下的文章。

系统运维 621 阅读

Nginx 大文件上传返回 413:从限制链路定位到安全放行的排查实践

适用场景 业务通过 Nginx 上传图片、安装包、备份文件或导入数据时,小文件正常,大文件刚提交便收到 413 Request Entity Too Large。应用日志没有请求记录,客户端通常只看到一个 Nginx 错误页。 本文以“上传 80 MB 压缩包失败、10 MB 图片正常”为例,说明怎样确认拦截层、放开正

阅读全文
系统运维 591 阅读

MySQL 主从复制延迟持续扩大:从现场取证到并行复制治理的排查实践

适用场景 本文适用于 MySQL 8.0 或已启用 GTID 的 MySQL 5.7 主从/主备架构:监控显示 Seconds_Behind_Source 持续增长,报表、读库或故障切换的恢复点开始不可接受。目标是先确认延迟真实原因,再在不破坏复制一致性的前提下恢复追平。 现象描述 一次订单促销后,主库写入从平时每秒数

阅读全文
系统运维 626 阅读

Nginx 反向代理后客户端 IP 全变内网地址:从 realip 配置到防伪造的排查实践

适用场景 业务服务部署在负载均衡、CDN、Kubernetes Ingress 或四层代理之后。应用日志中的 remote_addr 全是代理的内网地址,限流、风控和审计都无法识别真实访问者;更危险的是,直接信任请求携带的 X-Forwarded-For,会让攻击者伪造来源 IP 绕过白名单。 本文以“公网负载均衡 →

阅读全文
系统运维 601 阅读

Linux 时间漂移导致 JWT 校验失败与 TLS 握手异常:从证据采集到 chrony 治理

适用场景 适用于运行在 Linux 虚拟机、物理机或容器节点上的 Web 服务。业务表现为同一版本在部分机器上间歇出现登录失效、JWT token is not active / token expired、HTTPS 握手失败或调用云 API 返回签名过期;重试、重启应用有时短暂恢复,但问题会再次出现。 本文以“应用

阅读全文
系统运维 650 阅读

MySQL binlog 突增吃满磁盘:从定位大事务到安全清理的排查实践

适用场景 MySQL 主库所在分区持续增长,/var/lib/mysql 已接近 100%,业务开始出现写入失败、事务提交变慢,甚至因为磁盘写满而触发只读保护。检查目录后发现大量 mysql-bin.000xxx 文件,但不能直接删除:binlog 仍可能被复制从库、增量备份或审计流程使用。 本文适用于已开启二进制日志

阅读全文
系统运维 596 阅读

Kubernetes 滚动发布卡住:用 startupProbe 避免慢启动应用被 livenessProbe 反复误杀

适用场景 Java、Django、Node.js 等服务在 Kubernetes 中滚动发布后,新 Pod 长时间处于 CrashLoopBackOff,Deployment 一直无法完成;而在开发或低负载环境中启动正常。日志常只来得及打印数据库连接、缓存预热或迁移检查的前几行。 本文以“应用冷启动约 90 秒,但存活

阅读全文
系统运维 586 阅读

Docker json-file 日志轮转未生效:从磁盘告警到恢复服务的排查实践

适用场景 Docker 默认使用 json-file 日志驱动。运行一段时间后,宿主机 /var/lib/docker 持续变大,最终出现磁盘告警,甚至应用写文件、创建临时目录或重启容器都失败。本文适用于单机 Docker、Docker Compose 以及未由集中日志系统完全接管容器标准输出的场景。 现象描述 一次线

阅读全文
系统运维 647 阅读

Redis 延迟偶发飙升:从 Hot Key 与 Big Key 定位到分阶段治理实践

适用场景 业务使用 Redis 承载登录态、商品详情、计数器或排行榜。平时接口稳定,但在促销、定时任务或某些请求集中到来时,应用开始出现 Redis 超时;监控中 instantaneous_ops_per_sec 并不一定很高,CPU 也可能没有持续满载。 本文以单实例或主从架构为例,说明如何区分 Hot Key(极

阅读全文