一边写一边扩容托管 Postgres,到底断了几秒
来源:dev.to — 2026-11-09
📋 概述
DigitalOcean 文档说调整托管数据库规格时集群会进入「Resizing」状态几分钟,但「不会造成停机」。作者想从应用侧验证这句话:在法兰克福开了两个 Postgres 17 集群,单节点一个、带 standby 一个,都是 1 vCPU/2GB,写到 2 vCPU/4GB,同时有一个写入进程每秒约 75 行持续插入并记录每次确认、报错与重连。结果是单节点出现一次 5.9 秒空窗,带 standby 也有 5.3 秒,还各自多了一次断连;靠主键让重试幂等,最后逐条核对确认过的编号与表里真实内容,一行没丢。
🔑 核心要点
- 文档说的不中断,在应用侧表现为一次约 5 秒的连接空窗。
- 带 standby 并没有消除空窗,只是从 5.9 秒降到 5.3 秒。
- 写入方用主键重放,区分「报错但其实已提交」与真正失败。
- 事后全量核对编号,验证确认数与表内实际数据一致。
💡 金句
“I wanted to see what that looks like from the application's side, while it's writing.”
译:我想看看,在它正写着的时候,从应用这一侧是什么样子。
👍 0
👎 0
← 返回 dev.to 首页