Files
break 370fd3e67f
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 10m49s
update
2026-09-03 09:28:28 +08:00

13 lines
1.2 KiB
Markdown

## Context
优先轮询是普通轮询之上的高优先级调度,不是另一套轮询业务逻辑。自动套餐事件、无有效套餐、普通轮询异常补偿和受控人工触发均可入队;优先与普通轮询共享同一卡互斥和既有并发边界。
## Decisions
- 队列表保存卡、活动状态、合并来源、触发类型、来源订单/套餐使用、尝试次数和结果;同一卡活动项唯一。
- 在订单/套餐生效、无有效套餐识别、普通轮询异常后通过可靠事件入队;具备既有手动轮询权限的后台账号可在数据范围内通过 `POST /priority-polling-queue` 提交 `asset_identifier` 与必填 `reason`。消费者按来源事实幂等合并,不能由支付回调直接重复写队列。
- Worker 用行锁领取优先项,复用普通轮询既有并发上限、外部调用保护、套餐/流量/状态同步和失败重试;普通轮询查询活动项排除对应卡。完成或最终失败出队并写触发来源、操作来源、次数、时间和结果审计。
## Migration Plan
新增成对迁移、活动项唯一索引和来源索引;隔离库验证三种自动触发、回调重放、同卡合并、普通互斥、失败重试和 up/down/up。