Skip to main content Skip to Footer

埃森哲《展望》期刊


“微”力无边——微服务升级软件架构,加速数字化变革

IT系统架构设计是IT领域经久不衰的话题,是每个企业构建IT系统过程中极其关键的一部分。从中通服成功部署微服务的案例来看,不仅花小钱办成了大事,而且开辟出一种新的集团企业IT应用建设模式。

在传统企业管理中,以下场景并不陌生:

场景一:某老总的办公桌上,摆着一摞摞来自于不同部门的报告。然而,令他感到头疼的是,集团并没有统一的信息化架构,业务和财务部门的数据统计口径不一致。这位企业掌门人不禁叹息,“实现各公司的业财一致都这么困难,那想要实现集团全国‘一盘棋’更是难上加难啊!”

场景二:不同业务部门虽然工作内容不同,但却有一个共同点,那就是对IT部门永不休止的抱怨。这是因为不同功能和系统之间的数据集成方式不同,随着时间的推移,业务系统越来越复杂。最终导致的结果就是IT系统难以迅速满足急剧增长的业务需求。业务部门认为,传统的系统开发方式及系统架构制约了业务发展。

场景三:财务部门对IT费用也颇有微词。不同省份的系统建设和维护都单独进行,而且这部分费用散落在各公司的经营管理费用中,通常不能准确统计。虽然单独算起来,每一套系统费用并不高,但可以想象全国近百套系统的建设和维护费用加起来数目还是相当骇人听闻的。

为什么大型集团企业会面临上述这些管理问题?这还要从这些企业的信息化建设说起。

> 大型集团企业通常是典型的多组织、多层级、多业态企业,在他们的信息化建设过程中,普遍存在着矩阵式的软件架构,不同业务部门、不同分、子公司都建立了独立的应用软件,然而这些软件之间缺乏有效集成,从而形成了信息孤岛。各家子公司很大程度上都是在单打独斗,有时甚至会左右互搏,给集团整体管控带来很大困难。

不仅如此,不同业务系统在演变过程中也日趋复杂和僵化,很难满足数字化时代下快速变化的业务需要。尤其在云计算、大数据等新技术应用日益深入的今天,企业传统软件架构下应用系统的集成性、扩展性不高,为企业带来了一系列问题,诸如管理效率降低、透明度不高等等。

作为一家典型的大型集团企业,中国通信服务股份有限公司(以下简称“中通服”)也面临类似的问题。该公司由中国电信、中国移动、中国联通三大电信运营商控股,在全国范围内为通信运营商、媒体运营商、设备制造商等提供网络建设、外包、内容应用等服务,是国内通信业服务商里的旗舰企业。

但是,由于中通服的治理模式是典型的“小总部”战略及财务管理型,分为总部、省和专业公司三级架构,因此在过去的IT系统建设上,中通服采用的是各省自建自维模式。实际建设过程中,每个省所采取的方式方法、建设思路以及所采购的系统都不统一,这就给中通服的集团统一管控带来了不小的难度。尤其是在数字化时代,对企业内部协同的要求更高,需要对市场变化快速做出反应,之前的IT架构成为限制企业进一步增长的瓶颈。

变则通,通则久。面对上述问题,中通服下定决心对软件架构进行全面升级,以解决这些管理难题。虽然变革的决心已定,但具体实施起来难度可想而知,在这一过程中,中通服既要兼顾遗留IT系统,又要考虑到新系统的灵活性、可扩展性和可维护性,还要平衡业务和技术团队,这样的动态平衡并不好掌握。

即插即用,微服务成为新宠儿

在中通服最初的软件架构升级方案中,也曾考虑过购买成熟的套装软件,毕竟这种方式是信息化时代传统企业最常见的选择:借助成熟套装软件的应用,整合企业现有软件系统,再进行自上而下的部署实施,最终实现企业IT系统的全面升级。

不得不说,这种升级方式更成熟也更保险,但缺点也显而易见。

首先,主流套装软件不可能完全满足一家企业的业务管理需求,尤其是像中通服这样的企业,不同部门、不同分子公司都有其个性化需求,这样一来,大量的系统二次开发工作肯定少不了,后续的实施成本、维护成本自然也会大大增加。

其次,主流套装软件是典型的售卖许可证模式,用户越多,相应的软件采购费用也就越高,这对于业务系统用户数量庞大、所有一线项目经理都要使用系统的中通服来说,软件采购成本和后续服务费也相当可观。

第三,传统套装软件是典型的重功能、轻界面,不仅安装部署复杂,软件功能操作和使用也较为复杂,非专业人员必须经过系统培训才能正常使用,像中通服这样用户量庞大的企业,在后续的系统培训上也需要花费不小精力。

有鉴于此,中通服最终采用了市场上新兴的微服务模式,成功实现了企业IT架构升级,那么究竟什么是微服务呢?

微服务是指使用一套基于业务能力构建的轻量级服务来开发单个应用的方式途径,每个服务运行在自己的进程中,各服务之间使用轻量级机制通信,这些服务可使用不同的编程语言实现,以及不同数据存储技术,并保持最低限度的集中式管理,并能够通过自动化部署机制来独立部署。

相比传统套装软件的部署实施,微服务架构把一个大型的应用软件按照功能和服务分类拆分为数十个微服务,而其中每一个微服务就可以满足用户的一个需求(见图一)。这种架构将原本大而复杂的单体架构,重组为小而精美的独立服务,让工作变得更加高效、便捷、直击重点。


传统 IT 架构 V. S 微服务 IT 架构 传统IT架构 专有业务 专有平台 专有基础设施及VPN网络  微服务IT架构 总部业务 省公司业务 专业公司业务 共享的微服务平台 基础设施及互联网 

当企业对于某些微服务有特殊需要时,只需将针对这部分微服务的IT资源进行升级,以及将这些微服务进行更新,而不用像传统套装软件那样重新部署IT资源、重新对整个应用程序进行更新和调试。在系统出现故障时,微服务也可以实现对故障部分进行单独隔离,以免影响到整个系统的使用。除此之外,微服务架构还能让开发人员更便捷地基于“云”进行应用系统开发。

正因为如此,中通服最终下定决心拥抱微服务,自己搭建企业的软件架构,并在系统建设上兼顾套装软件和自主开发软件。在中通服的设想中,他们希望借助微服务应用,让软件架构能够“多快好省”地满足业务需求,在集团开发一个新业务时,对底层服务的调用能够像U盘那样即插即用。

2013年,中通服与埃森哲就软件架构升级进行探索和规划,到2014年正式实施,短短三年多时间,中通服不仅在外脑的帮助下引入了微服务架构这一先进的技术理念,还完成了全国范围内的部署实施。依照以往的经验,使用传统的系统升级方案,企业往往需要花上十年时间,方可完成整个软件架构升级过程。而微服务的应用,令整个过程效率大大提高,节省了大量时间及成本。

中通服内部为这个变革项目取了一个形象的名字——“翔云”,即通过拥抱云计算技术,采用以PaaS平台为基础的松耦合系统设计架构——微服务架构,敏捷地承接多样化的业务模式及需求。通过“翔云”项目建设,中通服建立了覆盖整个集团的软件开放平台,彻底打破了过去封闭的软件架构模式,全面提升了集团管控能力。

结合集团的业务特性,中通服将工程、设计、监理和运维四大类业务形态抽象为合同、项目、采购、销售、财务、客商和市场七大类微服务,开发人员调用这些微服务来组装业务,就像使用自来水一样方便,充分体现了微服务的优势所在。

比如,在面向财务的微服务中,中通服借助微服务良好的扩展性,实现了从总部到省再到专业公司的统一财务管理:当省公司或者专业公司有特殊的财务需求时,只需要在财务微服务的基础上构建属于自己的财务应用,就可实现个性化需求,这既保证了系统扩展的便捷和高效,又保证了数据的统一。

事实上,微服务这一全新软件架构模式的应用,一箭双雕,不仅帮助企业快速进行业务创新,对不同业务进行不同程度的透明化管理也指日可待。那么,具体在实施和部署微服务的过程中,企业需要抓住哪些关键点?让我们通过中通服的案例,来做一个深入了解。

微服务部署的六大关键

常言道,理想丰满,现实骨感。

在微服务架构实施过程中,企业会面临诸如部署复杂、后续运维管理要求较高等问题;更为突出的问题是,由于企业IT团队经验不足、缺乏相应的专业人才,搭建微服务架构难度较大,后续的维护运维成本也较高。因此,企业需要一个经验丰富的团队去引领这个过程, 并引进先进的理念及技术。

同时,受微服务自身特点的影响,当微服务被分割成一个个独立的业务模块,这些业务模块之间的互联互通就变得至关重要,将这些微服务科学系统地部署在IT基础架构上,并保证各个微服务的高效运行,对于企业来说也是一大难点。

中通服在“翔云”项目建设过程中,充分抓住了微服务架构实施的几个关键点,在规避风险的同时,充分释放出微服务架构的价值。

动态平衡:微服务的识别。对于业务复杂的集团企业来说,在应用微服务架构之初就要明确微服务的拆分,如果拆得过细,业务管理颗粒度做不到,许多微服务存在本身就是一种浪费,而且微服务之间的交互成本也会大大上升。而如果拆分过粗,微服务又无法更好地支撑起集团企业复杂的业务,因而,如何实现动态平衡非常关键。

最初,中通服将自身的业务拆分为417个微服务,但在实施过程中发现这一拆分方式过细,于是将微服务的数量降低到304个。在后续的系统开发过程中,又根据实际需要对微服务进行了调整,增加到了306个。

中通服的经验是,不必纠结于微服务的拆分怎样才最合理,因为企业的业务在不断变化,管理要求也在不断提升,在微服务的设计和实施过程中,不断寻找业务拆分与软件架构设计的平衡点才是微服务拆分的必由之路(见图二)。

微服务拼装应用示意图 个人事务应用 合同管理应用 项目管理应用 应用拼装 业务流程平台 业务流程化 流程制造 能力服务化 服务工厂 开发组件化 统一开发框架 数据解耦化 业务HUB  业务数据同步 PS项目 SD 销售 MM物资 FICO财务 SAP 财务 

构建平台:微服务的管理。在微服务架构管理上,中通服通过构建服务管理平台的方式,支撑微服务全生命周期的可视化管理(见图三)。目前,中通服已经实现了对集团所有微服务资产的管理,未来会继续推进开发运维的扩展升级。

中国通信服务  中国同福服务管理平台 服务分类配置 我的服务 可用服务 服务审批 监控中心 服务日志  申请 服务分类信息 合同管理 合同基本信息服务 合同过程管理服务 合同配置类服务 工时管理 工时填报类服务 工时查询类服务 公式审批类服务 项目立项 项目基本信息类服务 项目费雷配置服务 

微服务管理平台架构清晰,分为注册中心、监控中心、服务提供者、服务消费者几个核心角色,并通过分布式管理与调度,有效提升管理效率。               

新旧兼容:微服务与现有系统整合。经过多年的信息化建设,每一家企业都已经上线了大量的应用系统,微服务如何与企业现有系统并存呢?简单来说,就是传统系统负责系统间的信息交互,而微服务架构则负责每一个微服务内部的信息交互。

中通服“翔云”项目管理系统与财务系统的对接依然采用传统方式,以满足信息的一致性,但“翔云”项目管理系统内部则使用新的微服务方式进行管理。也就是说,遗留系统的对接全部通过传统方式,从而实现成本可控;新系统的开发则采用微服务架构设计。未来,随着遗留系统的逐步退役,中通服将完全过渡到去中心化、分布式的微服务架构上。

后台集中:工作流引擎和流程管理的考量。微服务架构的引入,可以帮助大型国企在IT系统建设上从容应对业务流程的复杂多变,以及业务的灵活可扩展,但选择一个灵活可扩展的业务流程管理工具同样至关重要。

中通服综合分析了目前比较流行的工作流引擎产品,最终选择以开源的Activiti为基础自主构建“翔云”业务流程管理平台,该平台拥有个性化、场景化、人性化、可视化等诸多优势,不仅实现了一个平台支撑全集团所有业务流程,而且支持多种复杂业务场景的流程处理,并提供多种形式的消息提醒以及基于网页的可视化流程定义工具。

在对工作流的配置上,“翔云”业务流程管理平台采用了创新的后台维护中心集中处理的办法,用户的提工单、咨询电话用他们习惯的语言描述,再由后台的专业人员进行配置,与传统的“培训用户使用系统”的思维方式相比,这样做既提高了效率,节省了培训成本,也大大提升了用户体验。

灵活扩展:虚拟机和容器的部署。与传统的物理服务器相比,采用虚拟机不需要冗长的固定资产采购流程,具有更高的效率和更低的成本。开发人员可以快速部署,运维人员可以弹性伸缩。相比较而言,容器技术则更加先进,它可以让微服务的打包和部署更加简单、高效。

中通服“翔云”二期项目就将项目管理的306个微服务打包为15个微应用独立部署,实现了物理解耦,屏蔽内部变化对外部的影响,实现灵活的动态扩展,用极低的硬件成本成功支撑了全国20多省的业务运营。

善用外脑:开发及运维团队。在系统交付中要满足快速迭代实施及优化的需求,通过建立一支专业化的队伍来支撑软件交付周期的闭环(计划、分析、设计、开发、测试、部署、运维、运营)。

相比不断变化的微服务,团队文化的形成确实一个逐步凝固的过程。具体到中通服的案例,在“翔云”项目中采用了“项目前期外部实施单位挑大梁,内部单位支撑;后期内部单位打主力,外部教官指点”的做法。

项目经理负责项目整体方案的制定及不同小团队之间的协调,外部团队的高手们负责在代码开发前基于业务需求完成微服务清单的梳理与定义,与应用设计同步进行,提升开发人员的效率。不同微服务由内外混成的小团队实施,小团队组长对各自微服务的质量负责。团队之间的关系是:既是服务的提供者也是服务的消费者。

微服务开启软件架构新纪元

随着数字化时代的全面来临,许多传统企业正在积极拥抱互联网等新兴技术,加快自身转型的脚步。企业的传统业务场景、用户行为等都随之发生着巨大变化。线上业务系统的增加,让IT团队的业务系统开发周期越来越短,应用复杂度也急剧增加,传统的软件架构已经不堪重负。

微服务架构通过有效拆分应用系统,降低了应用的复杂性,在一定程度上提升了应用系统的安全性,至少在一些微服务出现问题时不至于影响整个系统的运行;企业传统的业务应用系统经过多年IT建设,已经变得非常复杂,任何一个小的改动都需要重新部署整个应用,敏捷开发和快速交付更是无从谈起,而微服务架构很好地解决了这一问题。

具体到中通服的应用中,微服务架构实施给企业带来的价值尤为明显。

借助微服务架构的实施,中通服实现了全集团的数据大集中,使得集团决策层能够更加清晰地了解企业运营状况、为其做出科学决策提供了依据, 能做到内部的系统不再“各自为政”,每个省不需要再独立建设IT系统,因而可以大大降低成本。

对于大型央企来说,能否实现业财一体化至关重要,因为业务是财务的基础,财务则是业务的数据表现和成果反映,二者能否统一不仅体现着管理者的境界和水平,更是决定着企业管理效益的高低。央企规模大、分支机构也多,其集团管控的难度非常大。微服务架构的应用,在根本上简化了央企原有的管理系统,可以大大提升央企集团管控的效率,令央企的数字化转型之路更加顺畅无阻,一往无前。

一直以来 IT 系统架构设计都是 IT 领域经久不衰的话题之一,是每个企业构建 IT 系统过程中极其关键的一部分,它决定了 IT 系统能否被正确、有效的构建,能否满足业务的需要。从中通服成功部署微服务的案例来看,不仅花小钱办成了大事,而且打造了一种新的集团企业 IT 应用建设模式,总结起来其特点如下:厚平台,微应用;松耦合,插件化;界面优,集中维;开源化,易接入。
作者简介

向勇
埃森哲大中华区通信、媒体与高科技行业总监 常驻北京

发送邮件 向勇 这将打开一个新窗口。