大家好,我是易安!明天我分享下如何落地中台架构。
前台和后盾
讲中台之前,咱们先来了解下前台和后盾,这样,你能力更分明中台的定位。
前台 比拟好了解,指的是 面向 C 端的利用,比方像微信、淘宝这样的利用。不过,你要留神,前台不仅仅是指前端,它还蕴含和前端配套的服务端。
后盾 指的是 企业外部零碎,比方 ERP、CRM、仓库管理系统等等,次要是面向企业内部人员应用。对于传统企业来说,之前只有线下场景,通过外部的后盾就能实现所有业务流程;而对于互联网企业,或者逐渐发展线上业务的传统企业来说,同时须要前台和后盾,一起合作,实现业务的闭环。
但问题是,前台和后盾的个性是不一样的。前台对外 ,咱们晓得,消费者的需要疾速多变,所以前台须要能疾速响应,做到低成本试错;而 后盾对内,企业外部的业务流程不能常常变,所以后盾须要稳固,不能随便调整,一旦改变,影响面广,老本很高。
简略地说,前台要快,后盾要稳,因而在业务扩大时,咱们常常会遇到以下两类挑战:
- 这个营销思路很棒,老板心愿能马上验证,前台好改,但后盾调整起来须要好几个月;
- 后盾零碎技术旧,性能差,接口不凋谢,前台对接起来很麻烦,而且一有促销流动,后盾立马就挂。
第一类挑战,在互联网企业比拟广泛,前台常常玩各种花色,要求快;第二类挑战,在传统企业很典型,大量的后盾都是晚期洽购的商业套件,新的线上利用很难间接对接外部老零碎。
你能够发现,前台和后盾是企业 IT 零碎的一体两面,它们须要严密合作,独特服务于企业的业务策略。但两者对业务稳定性的要求不一样,在技术上也普遍存在脱节景象。
所以,如何实现前后台的平滑对接,这是一个微小的挑战,中台架构因而而生。
操作系统案例
讲中台前,我先举一个你比拟相熟的 Windows 零碎的例子:
在 Windows 零碎里,最下面是各种桌面利用,比方 Office 套件等,这些是用户可能间接看到的局部;最底下是各种硬件设施,比方磁盘、内存、CPU 等;两头是操作系统,它处于软硬件之间。
咱们晓得,实践上,桌面利用能够间接操作底层硬件,实现所须要的性能。比方,咱们用低级的汇编语言去开发利用,就能够通过端口来间接操作硬件。但很显然,这种开发方式的效率很低,代码的可读性和可维护性也很差。
然而,如果咱们在两头加上一层操作系统,通过操作系统向下治理硬件,屏蔽各种硬件的差别和复杂性,向上提供简洁的 API 接口,咱们就能够应用各种高级语言,通过调用 API,很不便地操作硬件了。
在这个外面,操作系统在底层硬件和下层利用之间,起到了很好的连接作用。
咱们就对照 Windows 操作系统的例子,来看下传统企业的 IT 零碎。比如说麦当劳,它通过多年的信息化建设,购买了大量的商业套件,如总部应用的 ERP、门店应用的收银零碎等等,这些零碎都属于后盾的领域,面向企业外部治理,针对的是传统的线下业务。
当初,随着麦当劳的业务倒退,要往新批发转型,比如说,他们要提供线上小程序点餐服务,为消费者发明更好的用户体验。
然而,这个小程序点餐服务不是孤立的,它离不开外部零碎的撑持。比方,小程序展现的菜品来自于后盾 ERP;小程序下的订单,会进入门店的收银零碎和厨房作业系统。
那么问题来了,这些 C 端利用,与外部后盾零碎要如何买通呢?
实践上,C 端的利用也是能够间接调用后盾老零碎来实现买通的,比方在麦当劳的例子中,小程序服务端能够间接调用 ERP 获取菜品信息,提供给小程序前端进行展现。但这个和 Windows 零碎里的桌面利用间接管制硬件设施相似,这里前后台的间接对接是十分低效的。
咱们晓得,小程序服务于 C 端,ERP 服务于 B 端,ERP 建设在前,小程序建设在后。ERP 零碎在施行的时候,齐全没有思考小程序点餐场景,两者在业务流程、数据模型、技术栈、性能要求等方面,差别都很大,导致间接的对接十分艰难。
而且,如果有新的 C 端场景进来,又要从头到尾对接一遍,从新吃一遍苦。这是一种硬着陆的形式,如果新业务上线采取这种形式,那至多须要好几个月工夫,根本无法满足业务疾速翻新的要求。
这时,如果有个中间层来负责 C 端利用与外部后盾零碎的平滑连接,帮忙新的 C 端利用软着陆,这样就会十分高效。这里我比照了操作系统和新批发中台,如下图所示:
以麦当劳为例,如果咱们对外部老零碎进行包装,对外提供规范的 API,这样就能把旧的 IT 基础设施,转换成面向互联网的业务平台。而后,新的 C 端利用能够疾速基于这个业务平台来构建,而不必关怀底层老零碎的实现细节。这个中间层就是中台。
你能够看到,中台相当于企业的商业操作系统,通过对后盾的包装,为前台提供全方位的反对。这里,须要留神的是,中台不仅仅是前后台之间简略的适配器,中台自身也会落业务数据,有残缺的业务规定,就像 Windows 操作系统一样,它在适配硬件的根底上,进一步提供内存治理、过程调度等性能,为下层利用提供体系化的反对。
对于互联网企业来说,前后台尽管是同时建设的,它们在性能上可能衔接起来,但前台求快,后盾求稳。所以在这里,中台能够先承接前台的业务和数据,和前台形成 C 端业务的小闭环,反对业务的疾速翻新,等业务模式验证后,中台和后盾再进一步彻底买通,形成业务的大闭环。
当初你曾经理解了中台的定位,可能会想,企业处于什么样的倒退阶段,须要落地中台呢?
接下来,我就联合一个出行平台的倒退过程,来阐明中台的适用性,让你可能在适合的机会抉择落地中台。
为什么须要中台
一个出行平台,当公司倒退从 0 到 1 的阶段时,往往只有一条业务线,比如说出租车业务,咱们间接依据它的需要落地零碎即可。随着公司倒退到从 1 到 n 的阶段时,业务线会逐步减少,比方减少了慢车、逆风车等业务。
这时,从零碎落地的角度,咱们有两种做法。
第一种是独立地建设新业务线,这样,各个业务线并列,零碎整体上是一个“川”字型的构造。
如下图右边局部所示:
然而,如果各个业务线的业务逻辑十分相似,子系统之间会有大量的代码复制,这就会导致反复建设以及多头保护的问题。显然,这是十分低效的,原本咱们想能尽快上线新的业务线,但后果是欲速而不达。
第二种做法是,把各业务线中雷同的外围逻辑抽取进去,通过形象设计,实现通用化,独特服务于所有业务线的需要,系统结构整体上是一个“山”字型。
“山”字型的下面三竖,代表各个业务线定制的利用;最底下一横,代表通用层,它把各个业务线有机粘合在一起,实现了业务逻辑和业务规定的对立,如上图中的左边所示。
这样,咱们就能一处建设,多处复用,一处批改,多处变动,从而实现最大水平的复用。
那咱们什么时候,须要从“川”字型转为“山”字形呢?
- 一方面,这和公司业务线的 数量 无关,业务线越多,意味着反复建设的老本会更大,当咱们开始上第 3 条业务线时,就应该要思考转到“山”字形了。
- 另一方面,也和各个业务线的 类似度 无关,类似度越高,意味着业务线之间有更多相似的逻辑,更适宜“山”字形。比方,出行平台的各个出行形式类似度很高,适宜“山”字形;但同一个公司的出行业务和互联网金融业务,差别比拟大,就能够思考“川”字形,而没必要把它们强行扭在一起。
所以说,中台实现了通用根底业务的平台化。从 变动速度 来看,企业根底的业务是绝对固定的,而具体下层业务场景是绝对多变的;从 数量 来看,根底业务数量是无限的,而具体业务场景是有限的。因而,有了欠缺的中台,咱们就能够通过无限而比拟固定的根底业务,来满足有限而疾速变动的下层业务场景了。
此外,从 业务角度 来看,中台收敛了业务场景,对立了业务规定;从 零碎角度 看,中台相当于操作系统,对外提供标准接口,屏蔽了底层零碎的复杂性;从 数据角度 看,中台收敛了数据,比方应用同一套订单数据模型,让所有渠道的订单应用雷同的订单模型,所有订单数据落到同一个订单库。
那么用一句话总结就是,中台通过实现根底业务的平台化,实现了企业级业务能力的疾速复用。
好,接下来,咱们就一起深刻中台,具体理解下中台架构设计的细节。
中台架构如何落地?
中台架构紧跟着微服务架构,那么中台和微服务架构到底有什么区别和分割呢?
简略地说,我认为 中台是微服务的降级。
在微服务架构下,咱们搭建的是一个个离散的服务,如商品服务、订单服务等等。而在中台里,这些微服务降级为了商品核心、订单核心,每个核心更强调体系化,包含更好的业务通用能力,更好的零碎经营能力(如监控、稳定性、性能的强化),更好的业务经营能力(比方商品核心自带配套的商品治理后盾)。
每个服务中心都围绕外围业务,自成体系,成为一个微内核,这些微内核造成一个有机整体,独特形成了根底业务平台,也就是中台。涣散的微服务 -> 共享服务体系 -> 中台,这是微服务架构向中台架构的演进过程。
当初大家议论比拟多的是业务中台,那咱们就来具体看下一个典型的业务中台的构造。它个别蕴含三层,从上到下别离是 通用聚合服务层 、 通用根底业务平台 和 通用中间件平台。
对于中台来说,根底业务能力由通用根底业务平台来实现;另外,通用聚合服务对根底业务进行组合,进一步晋升了业务能力的易用性;而通用中间件平台,通过技术手段保障了业务中台的稳定性,三者一起实现了企业整体业务能力的复用。
那么对于具体如何落地中台,互联网企业和传统企业的侧重点则有所不同。
- 对于大的 互联网企业 来说,零碎曾经是相似于“山”字型的构造,进化到中台,更多的是各个根底服务点上的强化和面上的整合。
- 对于 传统企业 来说,零碎基本上是“川”字型的构造,大量独立的商业套件组成遗留零碎,落地中台是一个革命性的动作。
所以接下来,我就次要剖析下传统企业如何落地中台,这样更能体现出中台的价值和落地的挑战。
首先,如下图所示,咱们看下典型的传统企业中台架构设计是什么样的。
你能够看到,整个中台架构从上到下分为四个档次:
渠道 & 利用
渠道 & 应用层,这是整个零碎的 对外局部,包含了各个利用的前端,如 App、小程序、公众号等等,这些是须要定制的局部。同时,在对外局部,咱们还会提供 Open API,供上下游企业调用。
利用平台
利用平台是各个具体利用的 母体,它蕴含了各个利用的服务端,比方小程序服务端、App 服务端等等,这些服务端会针对具体场景,做流程编排和信息的聚合。
服务端和前端之间还有一个 网关,网关实现前后端隔离,具体负责内部拜访的平安验证和监控,以及内外部申请的路由和音讯格局转换。
业务中台
业务中台是中台架构的 外围,它包含一系列的通用根底服务,以及它下面的通用聚合服务和上面的技术平台。
后盾
后盾包含两局部,第一局部是 适配插件 ,用于连贯商户外部零碎和中台根底服务,比方,在中台的商品服务和后盾 ERP 之间同步商品数据,在中台的会员服务和后盾 CRM 之间同步会员信息。个别针对每个外部零碎,都有一个适配插件,它起到了相似硬件驱动程序的作用,这个个别是定制化的。第二局部是 企业外部零碎,这个是企业的 IT 基础设施,业务最终会在这里落地。
OK,通过以上的介绍,你能够清晰地看到,中台代表了企业外围的业务能力,它自成体系,可能为 C 端的互联网场景提供通用的能力,并通过各种插件和后盾买通。这样,通过中台的通用化和后盾的插件适配后,咱们最终就把企业的后盾老零碎,包装成一个面向互联网的平台,能够疾速地给 C 端赋能。
总结
中台是从企业的业务策略高度,来思考企业 IT 零碎的建设,它的指标是实现企业整体业务能力的复用。从落地的角度看:
- 对于互联网企业来说,有大量微服务做根底,往中台转是改进,目标是更好地连接前台和后盾,实现业务的疾速翻新;
- 对于传统企业来说,外部有大量的遗留零碎,落地中台是反动,目标是盘活老零碎,全面实现企业的数字化转型。
互联网倒退到当初,从最后的电商,到 O2O,再到当初的产业互联网,曾经进入了深水区,很多传统企业都面临着数字化转型的挑战。架构上往中台转型,落好中台,真正施展中台的价值,这将是一个长期的过程,也是企业业务复杂化的必然结果。
本文由 mdnice 多平台公布