数字时代,消费者正在抛弃传统观念。用户需求随时随刻变化,企业面临新的挑战。 如果说传统软件架构是矩阵式的,不同业务部门所建立的应用软件各自独立,一旦用户有新的需求往往要牵一发而动全身,那么应对灵活变化市场,加速数字化转型的新型架构又是什么呢?
企业数字化转型,微服务不可替代
很显然,微服务架构将原本大而复杂的单体架构,重组为小而精美的独立服务,让工作变得更加高效、便捷、直击重点。 它的优势是显而易见的。 从业务角度来说,它能快速响应市场变化,调整业务逻辑,适配客户需求; 从IT角度来说,它能加快交付速度,易于开发和维护; 从创新角度来说,它能降低新兴领域试错成本。 因此,毋庸置疑微服务是数字化转型的基础。 对于这个结论,网易云产品总监李振涛也深信不疑。
随着技术的更新迭代,微服务已经替代云服务成为数字化转型的基础设施。 众所周知,数字化的核心价值是将企业运营过程沉淀为数据,这使管理者可以从数据视角而非过程视角来审视业务。 而微服务是一个数据流动的框架。 如果将数据比喻成水,那么微服务就是渠道。 如何有效的将水资源利用起来,这些渠道就至关重要。
同时,微服务在产业聚集方面也成为数据共享的关键点。 “传统行业产业聚集尤为明显。 除了地理上的聚集外,另一种方式就是O2O,从线下做到线上。 那么当企业发展线上业务时,微服务为行业内知识、经验、数据的流动和分享提供便利条件。 ”李振涛说。
此外,正如前面所讲,瞬息万变的市场让用户的需求变化越发急迫,这就要求IT必须快速响应业务需求。 而微服务的核心优势之一正是提升IT开发敏捷性,在这个方面双方不谋而合。
在网易云看来,微服务分为1.0、2.0、3.0三个阶段。 1.0较为简单,其架构涉及注册中心、服务发现这一类基础能力,大部分传统企业处于这个阶段。 而微服务2.0就会涉及较为高级的服务治理、降级、限流这些能力,以及日志、APM等工具。 只有把这些工具都运用起来,才能发挥微服务的价值。 目前,绝大多数的互联网企业处于这个阶段。 微服务3.0是未来,架构将平台化,并集成AI的能力,实现自动化运维。 现在一些互联网公司正在这个方向探索。 因此,网易云的目标是将微服务的能力带入到传统企业,这也是它的发展现状和未来趋势。
在软件开发行业,微服务正从一个流行术语转向实战战略。 而对于硬件厂商英特尔来说,他们对微服务也有自己的见解。 英特尔云计算行业技术总监宋仲儒认为,越来越多的计算资源将会以弹性的方式呈现给客户。 从起初的简单使用到服务治理,再到智能化监控。 若要将微服务有效的使用起来,企业势必需要强大的计算能力来支撑。 英特尔在这方面投入了很多资源,目的就是用海量的计算资源去支撑微服务架构的1.0、2.0、3.0,为企业的数字化转型提供基础。
轻舟微服务,来源于实践,值得企业信赖
据了解,网易云轻舟微服务是围绕应用和微服务打造的一站式 PaaS 平台,目的在于提供用户快速实现易接入、易运维的微服务解决方案,从而让业务系统开发者无需关注和学习治理相关技术,无需修改业务系统代码就可以快速引入服务治理能力。 基于如此愿景,他们立足于市场的根本是什么呢?
《计算机世界》对话网易云&英特尔: 网易微服务 荡舟云上
如果用三个关键词来概括轻舟微服务的亮点,那么非标准、开放和开源莫属了。 “首先,我们希望通过轻舟微服务平台,来帮助企业构建一种研发标准。 这个标准包含研发流程、研发工具、软件架构。 其次,开放的意义在于通过微服务把企业的数据接口、功能接口开放出去。 而开源则是希望在微服务架构里整合大量的开源软件。 在这个方面,我们已经有了不小的成绩。 ” 李振涛说,通过标准接口的开放,企业数据得以顺畅流动,能力得以最大限度的复用,而开源则保证了标准化的实现。
诞生于企业业务,轻舟微服务的壮大是在网易内部通过解决自身IT问题而磨砺出来的,但这个过程不是一蹴而就的。 据记者了解,网易内部最先部署了云平台,它支撑了业务资源的快速配置。 不久后,他们又进入到容器阶段,这是为了能够让底层的计算资源可以更加方便的调度,弹性伸缩。 最后网易进入到微服务阶段。
提及轻舟微服务的优势,李振涛认为有三点。 首先是实践经验。 “举例来说,市场上常见的微服务框架是Spring Cloud,这里边涉及到20多个开源组件。 如何能将这些组件应用到日常业务,其实需要很长一段时间摸索,这里边的经验就值得分享。 比如Eureka是一个至关重要的组件,它扮演着微服务注册中心的角色,所有的服务注册与服务发现都是依赖它的。 但是当我们选择源开源技术时就会面临一个抉择,究竟是偏CP还是偏AP,也就是偏一致性(如ZooKeeper、Etcd)还是偏可用性(如Eureka)。 这就是一个实践经验的问题,不同规模的企业,不同的业务类型,不同的IT能力,不同的应用偏好会导致不同的结果。 ”
其次,一站式也是轻舟微服务平台值得关注的亮点之一。 企业实施微服务架构会涉及到很多功能和组件。 就拿服务治理来说,当它成为微服务之后,企业就面临着分布式日志管理、分布式运营监控、故障定位、测试平台等。 CI/CD是微服务的基础,可以辅助企业完成架构的搭建。 但是如果都靠IT团队去研究开发,这是一项很大的工程。 所以随着网易内部业务的丰富,他们把轻舟微服务打造成一个全栈式的平台,包含各式各样的服务,从而让业务部门将精力完全专注于业务,摆脱开发的束缚。
第三,咨询也是很重要的能力之一。 在软件研发领域,一条亘古不变的真理是问题发现的越晚,成本就会成指数级上升。 尤其对于微服务场景来说,这是一个高度依赖于经验的领域,咨询尤为重要。 网易云的咨询团队由一线架构师组成,他们具有丰富的实战经验,在微服务的经验储备上是值得企业信赖的。
英特尔,隐形的幕后英雄
网易云一路成长至今,少不了伙伴的支持和帮助。 在众多合作伙伴中,英特尔发挥着举足轻重的作用,扮演着幕后英雄的角色。 面对高峰流量,面对大吞吐数据,面对网络延迟,每每出现类似的问题,英特尔都会从计算、存储和网络三个方面为网易云深度定制。
英特尔云计算行业技术总监宋仲儒说,在计算层面,网易云采用了第二代至强可扩展处理器,并在指令集方面实现了并行化加速,从而使整个微服务能快速响应巨量请求。 在存储方面,网易云采用了英特尔的傲腾和NVMe SSD,很好的支撑了网易的分布式存储以及大量IOPS请求。 在网络方面,凭借英特尔开源技术DPDK的技术积累,双方展开了很多合作,致使网易云的latency(延迟)成为业界排头兵,从而给客户带来更好的体验。
一年前,网易云和英特尔还推出了联合创新计划,其目的就是在计算、存储和网络合作之外,在核心软件层面进行更多深度定制化合作,为轻舟微服务提供更多的技术储备,从而为客户提供更多的云服务。 如今这个计划正在有条不紊的进行,并且会一直保持下去。
“伴随着英特尔向数据中心转型,我们与网易的合作,更多的是在软件优化层面上。 在AI领域,英特尔用高级指令集,用数学核心函数库MKL这些开源方案去加速网易云的计算能力。 同时我们利用SPDK释放原有的硬件资源,从而提升IOPS和吞吐量。 而DPDK也可以为网易云提供安全可靠有弹性的网络服务。 虽然我们看上去是一家硬件公司,但是英特尔提供给客户的是整体化解决方案,客户可以在应用硬件的同时依赖于底层软件来调优。 ”宋仲儒说。
传统企业选型微服务,有理可依
成功实践了各类微服务场景,那么有多少经验是可以值得分享的呢? 李振涛总结了三个方面。
首先,企业是否具备自身的技术实力,包括IT人员规模和整体技术储备。 以人员规模50人为分界点。 低于50人,考虑到使用成本,企业需要尽量将微服务应用简单化,可以通过开源工具链,降低使用微服务架构的门槛。 反之则是一个很适合部署轻舟这样的一站式微服务平台的规模。
其次,企业在应用微服务架构时,一定要选用开源工具,并且一定要选择互联网公司实战演练过的,在可运维的同时在可靠性和性能方面有保障。
第三,企业要选择较为活跃的开源社区。 在应用微服务架构时势必要解决一些难题,而开源社区能够给企业很大的支撑。 如果企业选择封闭的产品,那么出问题时只能依赖第三方,从而延迟问题的解决。
有一个典型案例可以分享,就是网易考拉(下文简称考拉)对轻舟微服务的应用。 电商拥有海量的C端用户,在大促期间会集中爆发。 伴随着轻舟微服务,考拉完美的实现了一个三级跳,即从云平台化到容器化和微服务化。 在最开始运营的过程中,考拉也面临着一些问题。 首先是人力耦合。 研发规模越来越大就会出现代码冲突、配置冲突; 其次是架构耦合。 由于考拉是一个单体架构,所有功能只能一起发布。 对于比较小的特性和产品,只能等着大版本的发布周期,从而导致发布涉及面较广。 因此,解决这些问题最好的方法就是微服务。 通过微服务的解耦,可以把整个电商平台分解成一个个小的功能,分别交由单独的团队去实现。 两个功能之间通过标准的接口进行交互,而不互相影响。 这大大提升了研发效率,将沟通成本降到最低。
同时,在考拉微服务架构中,由于每个服务通过API进行交互,所以就避免了在升级过程中的连锁反应,尤其是在频繁的自升级过程中出现的问题。 此外,微服务架构是通过分布式软件来提升平台的可用性,所以通过工具可以增强性能和稳定性,及时发现性能瓶颈,找出故障。
尽管有不少传统企业认为微服务有坑,或者价值未知,但是仍有不少CIO把它看作是数字化转型的必备良药,并且在项目实施的过程中谨小慎微。 而即使是这样,仍会出现重复造车的情况。 那么传统企业微服务化该如何避免重复造轮子呢?
李振涛说,就目前情况来看,传统企业在微服务化的过程中存在两种方式。 一类是在公司层面构建大中台, 例如整个企业的用户中心,所有业务都可以调用这个统一的用户中心,从而避免重复构建,最大限度的挖掘用户价值。
第二类是通过微服务将功能组件化,把企业的各层数据抽离成一个基层操作系统。 这就好比通过服务调用的方式把员工、产量结合起来,计算每个成员的绩效这样简单。 “在网易内部,我们提供了一些基础服务,比如容器、微服务框架、视频服务、IM服务、人工智能服务等,这些基础服务封装出来后,供给各个业务部门直接调用,他们则可以更加关注核心商业逻辑。 因此我建议任何类型企业从顶层架构设计上要充分考虑微服务模式,分别根据不同产品和功能抽离大中台或者小中台。 ”他说。
2019,微服务的“传统之旅”
2019年,经历了验证期的微服务势必要在传统行业里落地开花。 原因不由分说,正是由于变幻莫测的市场给企业的各方面挑战。 在这种场景下,微服务就是一个自然而然的选择。 同时,在制造业层面结合《中国制造2025》,网易云将一些工业的激励模型和知识通过微服务封装起来,在行业内进行传播创新。 这需要每家企业基于一个平台进行IT能力贡献,这是多人联合开发的典型实例,是具有很大挑战的。
此外,应用微服务架构可以减少新技术对于现有平台的冲击。 新时期IT越发复杂,如果企业坚持自身实现每一项技术,那么就无法享受技术红利带来的各项能力。 传统企业IT能力较为局限,采用外包的模式往往会受制于后期产品的运维。 只有在云端构建微服务平台,才能在软件标准之外,获取研发的流程标准。 因此,传统企业数字化转型,构建为服务平台是不可替代的一环。 而2019年将会有更多的案例落地。 我们拭目以待!
作者:首席信息官 徐蕊
↓↓↓点击阅读原文,了解网易云轻舟微服务平台