架构总原则:
-
大中台+小前台的架构思路
-
业务中台采用领域驱动设计(DDD),在其上构建业务能力SAAS,持续不断进行迭代演进。
-
平台化定位,进行了业务隔离设计,方便一套系统支撑不同玩法的业务类型和便于定制化扩展。
-
前后端分离,通过服务接入层进行路由适配转发。
-
天然的分库分表,消息解耦和分布式缓存设计,支持弹性扩容,以支持大数据高并发场景。
系统逻辑架构图:
接下来将分别介绍每个部分。
电商中台:
中台部分在逻辑上分成了基础能力和平台产品两层,这样做的好处是,基础能力层聚焦于稳定收敛的业务模型和基础服务本身,不会随着业务和前台产品的调整发生变化,可以简单理解为业务模型的DAO。平台产品层则专注于通过流程编排类的技术手段,将基础能力构建成业务的解决方案,解决共性和个性化的问题。我们将以交易的设计为例来说明这个分层理念。通过对电商交易业务的深入分析,
可以确定几乎所有的交易都会涉及下图中所有的领域(库存,优惠,价格…),而单看每个域,玩法都是很少变化的,将这些域的基础能力完全可以沉淀下来形成原子的基础能力,通过扩展点方式应对将来特殊的场景个性