携程金融的Redis架构
携程金融在经过多年的演进后,形成了多层次的系统架构,其中基础数据(如用户信息、产品信息、订单信息等)由底层系统产生,并服务于所有的金融系统。这些基础数据通过统一的缓存服务(系统名utag)进行缓存。缓存数据具有全量、准实时、永久有效的特点,适用于数据实时性要求不高的业务场景。
构建统一缓存服务的关键目标
- 数据准确性:确保数据库中单条数据的更新能准确同步到缓存服务。
- 数据完整性:将数据库表的全量数据进行缓存且永久有效,从而可以替代数据库查询。
- 系统可用性:多个产品线的核心服务都已接入utag,高可用性显得尤为关键。
整体方案设计
异地多机房部署
系统在多个地区部署,缓存服务也相应地进行多机房部署,既可以让不同地区的服务调用本地服务,减少跨网络专线的耗时,也可以作为灾备方案,增加可用性。
缓存更新机制
为了确保缓存的及时更新,设计了多种数据更新触发源:定时任务扫描、业务系统