有计划地进行重试
请求超时后,调用方可能无法确定写入是否已提交。重复执行非幂等插入可能产生重复记录,即使第一次请求已经成功。若数据模型允许,可使用唯一约束或 upsert。
对于多步相关更改,如果数据库操作支持事务,请用事务将它们一起提交或回滚。让 SQL 语句目标明确,并使用参数绑定,而不是拼接不可信文本。
确认实际存储结果
连接或工作流报错后,重试前先通过稳定标识查询并检查当前行。超时并不能证明没有写入;应区分请求失败和结果未知。
适当时在运行历史中记录操作键和变更信息。若写入还关联外部副作用,请使用 outbox 队列或明确的状态转换,避免通知或付款被悄悄重复执行。