-
Python 多进程 fork 后 logger 卡死的真实事故:6 层因果链 + 三种修法
一台数据处理机突然不出日志,32 个 worker 全部卡在 acquire() 上。py-spy 抓栈定位到根因:multiprocessing 默认 fork 复制了父进程持锁瞬间的状态,子进程继承了一把永远没人释放的 logger 锁。从症状到根因隔着 6 层因果链,本文给出 spawn / forkserver / QueueHandler 三种修法,以及全套 fork-safety li…- 0
- 0
-
一次 Python 字典在循环里加 key 引发 RuntimeError 的复盘:4 种修法 + 性能基准
会员中心定时任务凌晨 3 点抛 RuntimeError: dictionary changed size during iteration,改成 list(d) 后又漏了 4.2 万条数据。本文复盘 6 小时排查 + 72 小时漏数,讲清 4 种修法的性能 / 安全 / 适用场景,附决策树和团队事后立的 4 条规矩。- 0
- 0
-
asyncio event loop 被同步代码卡死的真实事故:P99 从 80ms 飙到 12s 的 6 小时复盘
一个隐藏在 async 函数里的 requests.get() 调用,把订单查询服务的 P99 从 80ms 推到 12 秒。本文用 1 万字+ 的篇幅完整复盘 6 小时排查过程:py-spy 抓栈、事故时间线、5 种修法横向对比、Prometheus loop lag 监控、Kubernetes 探针、AST 静态扫描规则,以及事故后我们对 47 个 Python 服务做的全面体检。- 0
- 0
生产事故
幸运之星正在降临...
点击领取今天的签到奖励!
恭喜!您今天获得了{{mission.data.mission.credit}}积分
我的优惠劵
-
¥优惠劵使用时效:无法使用使用时效:
之前
使用时效:永久有效优惠劵ID:×
没有优惠劵可用!



