All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 10m49s
1.7 KiB
1.7 KiB
Why
代理开放接口的高频查询复用了可靠卡观测序列:过去 24 小时约 70 万次查询产生约 35 万条序列,并留下 230 多万个 cardsync:* Redis 协调 key。Redis 已达到 2GB 上限并出现大量 OOM 写入失败;查询本身返回本地事实,读后异步观测既不改变本次响应,也没有当前对外契约要求。
What Changes
- 停止代理开放接口的卡流量、卡状态、实名状态和设备流量查询在成功响应后创建后台卡观测序列,包括设备查询展开到绑定卡的路径。
- 移除代理开放接口模块对读取型观测分发能力的依赖,使查询只读取并返回本地业务事实,不再隐式提交 Redis/Asynq/Gateway 副作用。
- 保留停复机、购包、套餐激活等既有持久化业务事实经 Outbox 触发观测的语义和当前可靠协调实现;本变更不迁移其他读取入口或设备控制入口。
- 在代理开放接口能力中建立可观察的约束,防止其后续高频查询再次接入可靠序列。
Capabilities
New Capabilities
- 无。
Modified Capabilities
agent-open-api: 代理开放接口的查询操作只返回当前本地事实,不再提交后台卡观测序列。
Impact
- 代码:
internal/service/agent_open_api/service.go、internal/bootstrap/services.go,以及卡观测触发模块的装配和可达调用链。 - Redis/Asynq:不再由代理开放接口查询持续创建
cardsync:*和对应任务数据;已存在 key 按其既有 TTL 自然过期。 - 外部行为:查询响应字段、认证和数据范围不变;查询不再附带非契约化的后台 Gateway 刷新。
- 不调整 Redis
maxmemory、淘汰策略,也不批量清理业务协调、队列或流量事实 key。