外观
系统架构 / TGEX KNOWLEDGE BASE
服务通信与消息流转
理解同步响应、异步事件与实时推送各自能证明什么。
通信方式
| 方式 | 适用场景 | 主要失败方式 |
|---|---|---|
| HTTP | 用户提交操作、后台配置、查询 | 网络断开、网关超时、鉴权失败 |
| Dubbo | 业务域之间调用 | 超时、调用失败、版本不匹配 |
| 消息 | 成交结果、异步处理、数据同步 | 重复、延迟、乱序、消费失败 |
| WebSocket / Netty | 行情与业务通知 | 断线、丢失增量、连接迁移 |
超时的含义
超时只说明调用方没有及时得到结果,不能证明服务端没有执行。对下单、划转、提现和结算,应通过业务编号查询既有结果,再决定重试。
设计目标
异步消费需要去重、可追踪和可恢复。发送成功、消费成功与业务落账是不同阶段。业务文档应注明每条事件的生产者、消费者、唯一编号及失败后的查询入口。