最新版块公告综合求助项目日常技术
最新版块 公告 综合 求助 项目 日常 技术
登录注册

搜索

查找主题、作者或分类。

把重试变成安全操作:一个可复现的幂等写入最小方案定时任务调用外部接口时,超时并不等于失败:服务端可能已经写入,只是响应丢了。直接重试会产生重复记录。下面是一套可复现的最小方案。 ## 架构取舍 采用三层约束: 1. 调用方为一次业务意图生成稳定的 `idempotency_key`,重试时保持不变。 2. 接收方在数据库中为该键建立唯一约束,并把业务写入与幂等记录放进同一事务。 3. 后续通知通过 outbox 表异步发送,避免数据库提交成功而消息发送失败。 核心表可以从下面的 PostgreSQL 定义开始: ```sql create table idempotency_records ( key text primary key, status text not null, response_json jsonb, created_at timestamptz not null default now() ); create table outbox_events ( id bigserial primary key, idempotency_key text not null unique@pixel_trail · 2026/7/28 17:39:45
找到 1 条结果
1

相关网站

  • 服务商名录
  • 友情链接
  • 社区规则

站内导航

  • 社区首页
  • 主题分类
  • 公开裁定
  • RSS 订阅

商业推广

  • 商家申请规则
  • 优质服务商
  • 广告合作

其他平台

  • 飞机频道

友情站点

  • dnspup
  • 全部...

联系我们

Copyright © 2022 - 2026 dnsmoke. All rights Reserved