拷问传统企业CIO:微服务化值得吗?

网易云2019-02-22 14:01

所谓数字化转型升级,就是以数字技术优化传统资源,企业需要谨慎地选择合适的技术逐步完成自己的数字化战略。以推出轻舟微服务平台的网易云为代表,云计算公司正在微服务领域发力,促进企业数字化创新。那么,微服务对数字化转型意味着什么?传统企业数字化转型为什么一定要引入微服务?


微服务是什么


所谓微服务架构,根据微服务架构大神Martin Fowler的描述,就是以业务域或业务功能为边界,将一个大而全的应用拆分为可以独立开发、独立部署、独立测试、独立运行的一组小的应用,并且使用轻量级,通用的机制在这组应用间进行通信。简而言之,微服务就是把一个大型系统分割成多个小而自治的系统,这体现了一种化整为零的思想(分治),实现业务、数据和物理资源的分散化管理。“服务”与传统的“组件”很相似,都是构造软件的“零部件”。以传统软件研发的视角来看,微服务的就是传统组件技术在云端以插件化形式的自然映射。当然,微服务围绕业务分工的粒度更细,整个分布式系统的协作也更为复杂。




与微服务架构相对应的是单体架构,单体架构的特点是组件高度耦合导致开发部署效率低、单体结构导致可用性差、单体部署导致弹性缺失,微服务架构则具备迭代更快(各模块独立开发、部署)、质量更好(去雪崩效应,秒级恢复)、应对爆发(架构到资源全弹性伸缩)等优势,可以快速响应业务需求,灵活应对业务峰值,实现业务服务永不宕机。


微服务在互联网行业的作用


无论国内外,微服务技术在互联网公司快速发展的过程中已经发挥了重要的作用。国外早期的代表是Netflix公司,在2008年因为全站瘫痪被迫停业3天后,Netflix痛下决心进行服务化架构改造,经过将近10年的努力,该公司实现了从单体架构到微服务化的变迁,支撑了业务的千倍增长,并产生了一系列的最佳实践,开源了大量的微服务工具。




国内的如网易考拉,日活迅速增长到千万级,这项电商业务面临快速迭代和高并发的挑战,经过不断的服务化改造,拆分成了400多个工程,不仅实现了618、双11所需的弹性扩容,产品迭代次数也从每天2次变更到每天1000次变更的飞跃,并且轻舟微服务平台的服务治理、自动化测试、APM等工具的支持下,软件产品质量提升了52%。




传统行业CIO需要微服务吗


来自互联网的最佳实践,是否符合传统企业业务的需求,这是CIO思考的问题。一些传统企业核心业务上云动力不足,就在于这些业务在集中式架构上运行稳定,迁移到分布式架构没有价值,反而要承担迁移的风险。但微服务不同,从企业内部来看,采用不同技术建设的孤立的信息化系统需要有效整合,此前传统的基于ESB(企业服务总线)的SOA的尝试,本质上就是要解决企业内部异构系统集成的问题,只是粗粒度的服务和复杂低效的通信方式使得SOA难以大规模应用,而微服务架构采用轻量的API调用服务,经过了互联网公司大规模业务的验证,不存在类似的问题。


更好的机遇是,当前互联网公司已经在实践中形成了成熟的微服务工具平台,可以帮助传统企业解决微服务化的各种挑战。例如,网易云轻舟微服务平台是诞生于网易内部的一套面向微服务化架构的基础设施,重点解决微服务管理、注册发现、服务治理、应用性能监控和链路跟踪等问题,是网易考拉、网易云音乐、网易云课堂等各产品微服务化架构的基础,该平台已经产品化,应用于各个行业。


从外部因素来看,数字化的冲击和业务创新的需求是不可避免的,传统IT对创新支撑不足也无需争议,微服务架构支持更快的响应与上线速度、资源与应用的全面弹性伸缩、应用服务的高可用、细粒度的资源配置等能力,正是企业探索创新业务、应对需求不明确的挑战的必备能力。另一方面,大型互联网公司对产业互联网的探索,也倒逼传统行业重新思考敏捷迭代、DevOps的软件工程,对接到互联网业务,以维持企业的行业竞争优势。将应用拆分成多个很小的微服务之后,CIO可以让小团队在几周或者几天内开发、测试和部署一些新特性,并在测试结束后以最快的速度投入生产,加速创业业务孵化,而在传统单体架构下,新版本的发布是不可能这么容易实现的。


所以,当前CIO需要思考如何将微服务引入现有的IT体系。事实上,Gartner于2014年就提出了“双模IT”的理念,不少CIO虽然对于这个概念并不敏感,却出于业务发展需要,自然而然地形成了双模IT的部署,稳态面向核心业务,支撑企业业务稳定、可靠、低成本的运行,敏态面向互联网业务需求,解决增量的问题。根据Gartner的调研数据,目前私有云的应用方向之一是True Cloud,不同于用虚拟化+自动化的方式把传统应用迁移到私有云的Cloud-Inspired模式,使用True Cloud模式的用户主要利用开源与互联网相关的技术构建类公有云的私有云,特点是敏捷、快速交付、快速迭代,能够应对未知的需求。目前,这类私有云用户占到了15%。


微服务在传统行业的实践与效果


勇于探索微服务与自身业务相结合的行业先锋,已经从微服务技术应用中获益匪浅。以网易云轻舟微服务平台为例,该平台已经在物流、工业和金融等领域得到了深度应用。在物流行业,轻舟微服务平台帮助客户实现了服务化开发框架及容器化部署平台,以支撑更大的业务量,更快满足能业务灵活变动需要,使得项目从需求到交付周期缩短40%,并通过实时监控和调度,有效提升资源利用率,节约了大量的成本。


在工业领域,企业客户利用轻舟微服务平台,根据工业业务场景的实际需求,搭建了应用全生命周期管理的一站式工业互联网云平台,以落实其智能制造的战略目标。客户将传统工业业务抽象成一个个业务服务,形成业务中台,通过业务服务的总和以及数据的有效利用创造出新的价值。同时,客户基于工业互联网云平台建立统一的研发中心,将分散在多个厂区的开发人员集中利用起来,在同一架构上快速协作,改变了传统的沟通模式,大大降低了人力成本。


在金融领域,客户借助轻舟微服务平台,搭建了统一的容器云,提高了资源利用率和弹性伸缩能力,并通过容器的快速部署和启停能力,提高了产品的部署效率和迭代效率。同时,客户将业务系统进行微服务改造,简化了运维复杂度,提升了产品开发效率、应用性能和稳定性,并优化了开发、测试以及运维流程和工具,有效缩短了开发测试周期,并提高了IT运维水平。


综上所述,微服务架构可以为业务带来加快业务迭代速度、提升业务可用性、灵活应对业务峰值、促进业务系统互通等价值,这些价值对于传统行业实现数字化创新、获取竞争优势也是不可或缺的,而网易云轻舟微服务平台等经过大规模业务验证的微服务工具,可以帮助企业快速完成微服务化的改造,获得微服务带来的好处。