某银行全渠道、多场景的积分兑换平台。整合银行、保险、证券等金融业务场景,实现积分统一管理和流通,让用户在日常金融消费中积累积分,并在商城中兑换实物商品、虚拟服务或金融产品,形成完整的积分生态闭环,提升用户活跃度和平台交易量。
系统采用微服务架构,主要包含以下核心模块:用户积分账户管理模块,负责积分的发放、冻结、扣减等全生命周期管理;商品管理模块,支持实物商品、电子卡券、金融产品等多品类商品的上架、库存、价格管理;订单管理模块,处理积分兑换订单的生成、支付、发货、售后等完整流程;营销活动模块,支持积分抽奖、限时兑换、积分翻倍等多样化营销活动;风控管理模块,实时监控异常兑换行为,防范积分套现和恶意攻击;数据统计模块,提供积分发放、消耗、用户行为等多维度数据分析。
用户通过金融业务(如信用卡消费、理财产品购买、保险投保等)获得积分,积分实时到账并可在多端(APP、小程序、H5)查看余额。进入积分商城后,用户可浏览商品分类、搜索商品、查看商品详情和兑换所需积分。选择商品后,系统会验证积分余额和商品库存,确认无误后生成兑换订单。对于实物商品,系统对接物流系统安排发货;对于虚拟商品,系统提供兑换码或直接充值到账。整个流程中,系统实时同步积分变动,支持订单跟踪、售后服务、积分退回等功能,确保用户体验流畅安全。
整体架构与设计思路
系统采用“业务中台 + 微服务 + 事件驱动”分层架构:
网关层:Spring Cloud Gateway 统一鉴权、流控、灰度;
业务服务层:按 DDD 思想拆分为 6 个微服务(用户、积分、商品、订单、营销、风控),注册到 Nacos,配置走 Apollo;
数据层:MySQL 8.0 主从 + ShardingSphere 分库分表(10 库 20 表)扛 6 k TPS 积分账务;Redis Cluster 缓存热点商品库存与账户积分,QPS 峰值 4.2 w;
异步消息:Kafka 三集群 9 节点,下单、发货、积分变动等 12 类事件统一走 MQ,保证最终一致性;
高可用保障:双 AZ 部署,Prometheus+Grafana 实时监控,接口 99.9 % 可用,核心链路 SLA 99.95 %。
我负责的模块与量化结果
积分账户服务(owner):
设计“积分流水 + 余额快照”二级索引,解决大表慢查询,查询 P99 从 1.2 s → 90 ms;
基于 Redis Lua 脚本实现“预扣+回滚”机制,将并发兑换的库存超卖率从 0.3 % 降到 0;
压测 8 w 积分并发扣减,CPU 维持 65 %,接口 TPS 提升 2.7 倍至 5 k;
灰度上线 3 周,累计发放积分 21.6 亿,账务差错率 < 0.001 %。
订单履约链路(核心 contributor):
引入 Saga 模式编排“下单→扣积分→占库存→发货”4 步,将订单终态一致性耗时从 15 min 缩短到 45 s;
自研“补偿任务调度器”,基于 Kafka 延迟队列,把异常单自动补偿成功率提升到 99.6 %,每月节省客服人力 30 %。