中台建设踩坑史,别说这些问题你不会遇到
2407
2019-09-25 10:49    文章来源:AI前线 原创:Kitty (ai-front)
文章摘要:“中台”是 2019 年技术圈的热词之一,从观望到试水,很多公司做出了从 0 到 1 的探索。

 中台建设背景 

在蘑菇街,平台技术团队一直是作为强有力的支撑力量在构建着蘑菇街技术中台,他们不仅维护了与云厂商交互的云适配层,也维护了蘑菇街的一些高效业务中间件。而电商、直播、内容三大业务部门也是各自支撑自己的业务内容,但是每个业务部门内的中台建设推动则是在 2019 年初。通过对业务发展趋势的理解,可以预判出技术未来的方向,在中台改造的过程中按照中台演变的方式来进行部门内人员的分工,提前为公司业务的调整做好了技术侧基础的搭建,改造进行的几个月后,公司的组织架构也如预判一样进行了相应的调整。基于这样变动的原因主要来自于以下的考虑:

在年初的几个项目实施过程中,我们发现当项目涉及业务系统较多时,各系统在实现时仅考虑自己系统的实现部分设计;

设计后的方案虽说在每个业务领域内合理,但是新项目的维护却十分困难;

同时这些新实施的内容大多偏向于很多业务的组合,并不能很好的归属到某一个业务范畴;

通过对业务的预判,我们认为公司会不断进行深入产业链的内容,类似的业务支持还会有很多,而且这些业务的维护周期可能很长、也可能仅有几天,而这些都和传统互联网架构产生冲突。

在做中台之前,一些业务需求的实现如果涉及多个业务领域系统的时候,各内容仅会对自己的业务维度进行思考,现在可以站在全局的维度上,了解需求的更合理设计方式,并且不断强化各业务自身的能力;而在现在,一些新业务的支持,仅需要将各业务领域系统的功能做简单组合即可完成。

 中台建设战略 

在蘑菇街中台的实现也是会区分技术中台和业务中台的;技术中台主要是由云适配层、业务中间件、直播公共技术等模块组成的,下面会针对这几方面展开说明:

云适配层: 由于蘑菇街是借力云厂商的云化架构体系,所以云适配层在初期就是为了适配不同云厂商而建立的;但是在不断发展的过程中,我们逐渐发现云厂商在不同方面提供的能力各有强弱,而针对云厂商的灾备考虑等也使得云适配层在不断强化,逐步会演变成为适配混云架构的核心接入层。

业务中间件: 在业务不断升级和转变的过程中,我们发现针对业务的支撑会有大量可抽象可复用的功能形态,而针对于这部分的功能又无法归属到业务的范畴之内,所以我们针对于这部分内容抽象出了业务中间件;而业务中间件的产生,也大大的提升了业务研发的效率,减少了很多重复功能和重复架构的负担,这也使得业务中间件逐步成为技术中台中的重要一员。

直播公共技术: 在业务发展的过程中,直播业务的能力也在不断迭代和发展,我们发现直播的底层技术可进行充分的解耦,抽离出与业务相关较小的核心技术模块;借此契机,我们开始了针对于直播公共技术的剥离,进一步使得剥离后的部分成为可被其他业务复用的基础技术,从而达到通过这部分内容而为其他业务赋能的目的。

除了技术中台的组成外,业务中台的组成也可以总结为以下几部分:

商品、交易、促销等电商核心业务: 整合了电商相关的核心功能,为其他业务变现提供电商的支撑。

内容核心业务: 包含了内容相关的完整能力,可以快速为其他业务提供内容侧的相关功能,并支撑内容与其他业务的结合。

直播核心业务: 包含了主播、机构等直播核心业务的核心技术,可为其他业务快速提供直播相关的核心数据和核心业务逻辑,能快速支撑业务的快速调整和业务交叉。

 中台改造问题 

在建设中台的过程中,还是产生了不少的问题的,而下面这些问题可能在很多公司建设时都可能遇到:

在中台建设过程中,业务仍然需要快速迭代,所以就出现了 改造和业务实现并行 的问题

这个问题应该比较常见,在一些改造与重构时也会遇到类似的问题,中台的建设无法在业务完全停止的情况下进行,这种情况就类似于一个常见的比喻,就是给飞行中的飞机换引擎;

我们的解决方法就是梳理和分类业务领域内的系统功能,然后逐一进行中台维度抽离和改造,当日常业务需要这部分功能时,通过切换开关和流控的方式将外层对于功能的依赖,逐步转化为使用中台改造后的功能,类似通过一层网关来达到对于新旧内容的路由,而不影响外部业务的迭代。

人员的变动 也是中台建设过程中碰见的一个难题

中台的改造是对核心技术部分进行修改和重新划分,那么人员的变动必然会让新接手的人员增加熟悉的工作,这个也是碰见的难题;

但是,当我们发现熟悉的工作无法避免之后,我们开始进行人员的调整,让其他业务领域的人员来进行跨领域内容的熟悉,通过这样的方式,我们让各业务领域的人员都对全局有了更深入的了解;

所以,通过跨领域人员的调动,来达到对不同业务领域内容的了解,可以让中台的改造向着更适合的方向前进。

 中台提效案例 

在蘑菇街,业务中间件作为技术中台的一部分,它的核心目的就是为了提升日常的研发效率,所以类似案例还是有很多的。在日常的业务研发过程中,我们发现各系统都有对较长生命周期的缓存需求,而每个系统都要自行研发一套针对于缓存的读取,和增量与全量 DUMP 的流程。鉴于这种需求的抽象,我们抽离出这套逻辑内容,研发出了蘑菇街现在在较多系统所使用 Zonda 中间件,通过简单的配置,就可以完成对此类似功能的实现,大大提升了日常业务研发的效率。更多案例分享,将会在 QCon 上海站 的「业务中台化演进」专题中跟大家分享。


版权声明:

凡本网内容请注明来源:T媒体(http://www.cniteyes.com)”的所有原创作品,版权均属于易信视界(北京)管理咨询有限公司所有,未经本网书面授权,不得转载、摘编或以其它方式使用上述作品。

本网书面授权使用作品的,应在授权范围内使用,并按双方协议注明作品来源。违反上述声明者,易信视界(北京)管理咨询有限公司将追究其相关法律责任。

评论