中台技术架构概述
目录
1. 什么是中台 (3)
2. 中台和微服务的区别 (5)
3. 为什么要做中台 (6)
4. 深入中台架构 (8)
5. 总结 (10)
这两年中台很火,已经代替微服务成为架构首选,涌现出各种各样的中台名词,业务中台、数据中台、技术中台、算法中台等,让人眼花缭乱,稍微大点的互联网公司都号称在做中台。
1. 什么是中台
既然讲中台,必然还有前台和后台。前台很好理解,指的是面向C 端的应用,包括前端(如App/ 小程序) 和对应的服务端。至于后台,很多人把它等同于管理后台,比如商品管理后台,负责商品定义/ 上下架等,提供给内部运营人员使用,这可能不够准确。
简单来说,对于一个交易系统,前台对应用户能看到的部分,如商品浏览和下单,属于接单的部分;后
微服务项目技术架构台对应履单部分,如仓库拣货/ 配送/ 财务结算/ 采购补货等,属于实际干活的,由企业内部人员负责,处于一个交易处理流程的后端。
在传统企业,没有在线的前台,基本是线下手工接单,内部信息管理系统基本都属于履单范畴,例如ERP、CRM、采购系统、仓库管理系统,财务系统等,这些系统属于一般意义上的后台概念。
在互联网企业,因为系统一般是自己开发,管理后台既包含面向前台销售的功能,如商品上下架和促销管理,也包含面向履单部分,比如配送、采购、财务结算,所以互联网企业的管理后台并不简单等同于履单后台。
接单和履单之间还有一系列事情要做,包括生成订单时的优惠计算/ 创建实际的订单/ 支付/ 库存扣减等, 这部分功能属于交易逻辑的核心。在简单场景下,前台应用包含这部分功能,在复杂的场景下,就有必要把这部分独立出来,构成独立的中台,为前台减负。
一些文章笼统地介绍中台是用来连接前台和后台的,这个值得商榷。如果管理后台就是后台,那没有连接的必要,因为管理后台本身就是系统的附属部分,和前台属于一体两面。至于履单
后台,前台接单系统和后台履单系统设计时就是打通的,也不需要额外定义一个中台来连接两者。互联
网企业的中台更多的是基础业务下沉,实现多业务场景共享,但在传统企业,后台系统清晰地存在,中台确实起到连接后台(内部老系统) 和前台(新的C 端应用) 的作用,所以互联网企业的中台和传统企业的中台定位和侧重点是有差异的,这个下文会展开介绍。
为了更好地理解中台,这里举个形象的例子:
最上面是各种具体的桌面应用,比如office 套件,最底下是各种硬件设备,磁盘/ 内存/CPU 等。
桌面应用能不能直接操纵底层硬件设备完成功能?理论上是可以的,比如在应用里嵌入汇编语言直接操作硬件,但显然开发效率低,可维护性很差。如果中间加一层操作系统进行转换,向下管理硬件,向上提供简洁的API,应用开发就非常方便,这里操作系统类似中台的定位。
对于大型传统零售企业(上图右边部分),企业经过多年信息化建设,购买了大量的商业套装软件,形成内部IT 基础设施,现在要往新零售转型,理论上C 端的应用可以直接调用老系统的API(如SAP 产品提供一定的开放能力) 来实现功能打通。但和桌面应用直接控制电脑硬件设备类似,这两者直接对接是低效的,两者的服务对象(2C 和2B)/ 数据模型/ 技术栈/ 实时性要求差异很大,而且新的应用进来,又要从头到尾对接一遍,新业务上线,至少需要大半年的时间。
这时如果有个中间层负责桥接和转换,就非常方便。C 端应用可以快速基于这个中间层构建,不用关心底层遗留系统的实现细节。这个中间层就是中台,起到类似操作系统的作用,把旧的基础设施转换成面向互联网的基础平台,而且这个平台非常通用,新业务可以快速对接,短时间搞定上线。传统企业在做全面数字化转型时,这样的一个中台必不可少。
2. 中台和微服务的区别
中台源于大型互联网企业,这些系统一般是分布式的微服务架构,那么中台和微服务架构有什么区别呢?
简单地说,我认为中台是微服务的升级,原来只是一个个离散的服务,只负责提供接口功能,如商品服
务/ 订单服务/ 权限服务,在中台里,升级为商品中心/ 订单中心,每个中心更强调体系,包括更好的边界划分和业务抽象,更好地监控和系统运营能力(稳定性/ 故障定位),更好的业务运营能力(比如商品中心自带商品管理后台,支持基础商品定义)。每个服务中心围绕核心业务,自成体系,成为一个微内核,这些微内核既相互独立,又形成一个整体,共同构成基础业务平台,也即中台。松散的微服务->共享服务体系->中台,这是微服务架构和中台的区别和联系。
现在大家谈的最多的是业务中台,我认为一个典型的业务中台包含 3 层:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论