2025-12 高并发时应用宕机问题排查
一起因为 OkHttpClient 使用不规范(未单例使用),进而引起的高并发下资源占用过高,从而导致应用服务宕机的问题回顾。 2025-12-16 21:39:00 CI/CD 平台告警,应用负载实例存活比率低于 35% 2025-12-16 21:42:00 观察应用监控,发现流量远超日常(QPS≈49,000) 2025-12-16 21:45:00 尝试重启 &...
分享代码、架构设计与生活随笔
一起因为 OkHttpClient 使用不规范(未单例使用),进而引起的高并发下资源占用过高,从而导致应用服务宕机的问题回顾。 2025-12-16 21:39:00 CI/CD 平台告警,应用负载实例存活比率低于 35% 2025-12-16 21:42:00 观察应用监控,发现流量远超日常(QPS≈49,000) 2025-12-16 21:45:00 尝试重启 &...
JDK 21 默认 GC 为 G1 -XX:+UseZGC 使用 ZGC,但默认是不分代的,通过 -XX:+ZGenerational 开启分代模式 在正式升级至 JDK 21 之前可以在 JDK 1.8 下升级相关依赖包,注意若之前使用的是 1.x FastJson 那么升级到 2.x 有很多坑 问题其实就是目标版本的 slf4j api 没有被成功加载,原因如下: slf4j....
在常规业务场景下,库存管库的强制目标均是不能超卖。在此基础上,第二优先:销售速率要快。(高吞吐量,若销售速率过慢,则高并发流量会持续甚至加剧)下文将基于主要的查询、扣减两个常规操作进行不同方案的对比。 C 端操作:查询、扣减、退还 B 端操作:查询、初始化、增加、减少 实际需要结合业务场景,若并发量不大,则可直接使用 MySQL + 行级锁的方式 若并发量大,但库存量不多,则可基于 Redis...
一起因为不规范的日志写入将日志写入到了控制台,而后触发 Docker 容器控制台日志过多到 hangs,进而引发应用死锁的线上问题回顾。 2025-04-09 18:16:35 业务报演出票务后台访问异常、无法访问 2025-04-09 18:19:56 通过 CI/CD 平台发现 xx.xxx.98....