之前主导过一家大型国际化银行的国际清算数据平台的架构,这里回忆一下的当时的架构设计与复盘:
这个清算数据平台的主要业务功能:
按业务主要分为:Marge Reform,Razor,Murex,Opics几个部分,用来处理上游Assassin的银行基金清算数据,主要实现mapping,filter,validation等业务逻辑,用apache camel做为基础框架,spring ,hibernate等做为ioc容器和O-RMapping工具,所有业务流程异步化,用jms(websphere MQ)作为信息传送服务。
当时,也是用到微服务的架构思想,所有分步的业务组件独立化,之间用MQ通信,这样所有组件都可以独立部暑,扩展,优化,各组件独自处理好自己的业务逻辑,如DataReciver 主要处理业务为:接收数据,并进行数据初步验证和初处理,DataHandler主要业务为:核心业务,主要为处理Marge Reform,Razor,Murex,Opics各自的业务相关的数据处理工作,DataDisputcher主要处理业务为:向下游分发数据并接受下游的处理结果反馈。
架构如下: