[设计案例分享]基于数据中心实现系统间数据解耦

 

公司主做基于灵活用工市场的业务场景系统。企业为了把握市场先机,通常是业务先行,所以,首先会做业务系统。随着业务系统和交易量增多,内部管理系统也随之增加。

系统耦合

如下,上面是业务系统,下面是支撑系统。渠道商系统要计算渠道商分润,销售管理系统要统计销售业绩,报表系统呢,要出各种数据报表,这些支撑系统一个共同的特征是,它们要依赖业务数据,交易数据必不可少。

显然,各支撑系统都从各业务系统获取数据,并进行数据整合。一方面,可能会增加各业务系统压力。另一方面,各支撑系统都要开发重复的数据整合工作。

系统解构

于是,数据中心就诞生了。

系统结构见下图,通过数据中心,使得支撑系统与业务系统实现解耦,也有利于上层业务系统和下层支撑系统横向扩展​。

以交易数据为例,整体实现方案:

1. 数据中心Mysql数据库创建统一的交易表。数据传输方式视情况而定。惠出行交易不要求实时同步,交易完成后通过RabbitMQ生产消息,数据中心Consumer监听到消息进行入库。优付数据要求实时同步,考虑到优付是Oracle,可以通过阿里异构数据库同步工作yugong来实现。

2. 数据中心提供交易数据统一API,通过rpc调用方式提供给支撑系统。

原文地址:https://www.cnblogs.com/buguge/p/15580887.html