[架构设计]一个简单的数据中心的设计

2021-01-24  本文已影响0人  铜炉

前言

最近做了一个小需求,主要功能是提供一个数据中心的能力,因为之前的平台没有数据服务的能力,所以酒趁这个机会在一期讲数据中心的架子简单搭起来。

分析

简单来讲,需求就是有若干个维度的数据,搭配上若干个维度的数据类型,为了不踩红线,举个类似的例子。

有三种数据主体的数据,

有若干对于数据主体的数据查询类型

架构的设计

首先,从请求到数据返回按层次分可以分为四层

其中数据源随着不同数据处理的类型不同,可能会散落在各处。接口层统一收口,这两个地方操作的空间不大,也没有太大的意义,保持各个数据源有一个接口层即可。

数据主体和数据处理部分是一种多对多的关系,班级可以有学生画像,也可以有签到情况,学生画像也可以应用于课程的主体,所以,如果完全打散,针对不同链路都做单独实现类来处理,实在是太过于麻烦。

所以,处理方式如下

这样,通过两个接口,把接口层调用数据主体,以及从数据主体调用数据处理解耦。
其中还有若干细节
1、通过依赖注入获取下游的所有实现类
2、通过注解在数据处理类上标记其可以处理的数据主体。
3、在数据主体的抽象接口下加了一层抽象父类,同时继承spring的初始化bean接口,可以在依赖注入完成后构建一个map,用于给子类快速获取支撑其数据主体的数据处理类

以上。

上一篇 下一篇

猜你喜欢

热点阅读