"高可用数据服务交易系统架构方案"
本文档介绍了高可用数据服务交易系统的架构方案,该方案旨在提供高可用、高性能和高可扩展性的数据服务交易系统。该系统架构主要包括Gateway、UserService、Charging、Log Storage、Calculation、Metering、Cache、Message Queue等模块。
高可用性架构设计
为了确保系统的高可用性,该系统架构设计了多种机制,包括:
1. 分布式部署,无状态设计:所有服务通过nginx调用,多upstream,轮询机制,服务无状态,必要的状态保存在中央存储中。
2. 故障恢复机制:包括预防、自动化故障转移、故障感知和故障恢复四个阶段。
3. 降低关键路径复杂性与负载:专注于核心业务,尽量少加入无关的复杂逻辑与数据依赖,调用其它服务均需设置超时,避免被外部服务故障影响。
架构演进
该系统架构经过多次演进,包括:
1. 初始架构:实现功能GatewayUserServiceCharging12Log Storage &Calculation345准确计量。
2. 架构演进:提高效率Log Storage &CalculationCharging214UserGatewayService5PermanentStorageCacheMetering3MessageQueue63准确计量。
计量准确性
该系统架构对计量准确性有着严格的要求,包括:
1. 计量最终误差要求 不高于 0.01%。
2. 交易系统可用性要求 不低于 99.9%。
3. 异步计量准确计量。
消息系统选择
为了确保高可用性,该系统选择了消息系统,具有以下特点:
1. 数据可持久化。
2. 支持订阅和队列两种方式。
3. 高性能。
4. 具有水平扩展性。
资源限制
为了避免资源的无效或者故障调用耗尽,该系统架构对资源的使用进行限制。
监控与报警
该系统架构对监控与报警非常重视,包括:
1. 所有服务上线之前必须有基本监控与报警。
2. 基础组件监控与报警。
3. 业务指标监控与报警。
4. 调用追踪系统。
该高可用数据服务交易系统架构方案旨在提供高可用、高性能和高可扩展性的数据服务交易系统,满足高可用性和高性能的需求。