2016年,有人预言微服务架构的应用将在2-5年内达到爆发,在互联网企业中成为主流。一直到四年后的今天,这些预言早已变为现实,但当初微服务新兴时所作的一切设想到底是否已经实现?
微服务架构有别于更为传统的单体式方案,可将应用拆分成多个核心功能。每个功能都被称为一项服务,可以单独构建和部署,这意味着各项服务在工作和出现故障时不会相互影响,而且这些服务均可独立运行。多年来日渐成长为企业团队中的砥柱技术,但微服务自落地以来,也产生了一系列“副作用”。如何将微服务架构从 spring-cloud 升级到 service-mesh?能否做到平滑迁移? service mesh 的落地阻力有哪些?如何更好的划分微服务的粒度以更好的匹配平台的规模?如何进行微服务 API 网关建设?都成为了微服务应用发展中亟待解决的问题。
如今,围绕数字化经济构建的基础设施范围包括 5G、AI、云等相关配套产业,可以预见,未来在新基建的建设中将会是万亿级投入。展开来看,新基建的诉求中包含以下几点:
1、高产能,要求业务要快速上线,自动化运维、自动化弹性;
2、高智能,要求数据计算效率的提升;
3、泛在计算,包括泛在网络,无处不在的计算、边云协同,以及随时随地的网络接入。
3 月底,广东省广州市黄埔区、广州开发区、广州高新区就发布了加快“新基建”助力数字经济发展十条政策,从建设新设施、重奖高端新项目、培育产业新生态等方向出发,大力发展新基建新态势。而要打通新基建的路径,企业微服务落地是重要一环。在 5G 基站铺满全国后,微服务的治理给互联网企业带来了新的挑战,对于以互联网为经济主导的广东来说尤为如此。
2020 年 7 月 17 日,华为云在广东启动了专属粤,目的是给广东的企业带来华为云最新的技术理念以及应用实践,助力企业云上创新。期间,7 月 23 日,华为云联合 InfoQ 举办了“5G+X 联创营—泛互联网高端技术专场”,主题为「企业微服务落地的那些实践」。广州数十家互联网企业的 CTO、技术专家坐在一起分享和探讨,让微服务实践经验流动起来,推动微服务最佳实践在广东互联网企业中落地。
团队系统越复杂将越适用于微服务
微服务起源于 2005 年 Peter Rodgers 博士在云端运算博览会提出的微 Web 服务(Micro-Web-Service)。如今,开发者设计的程序越来越复杂,微服务打造的模式强边界、独立部署和技术多样性的特点可以用来把控最复杂的系统。但随之而来的问题就是引入了微服务本身的复杂度,比如需要解决的包括自动化部署、监控、容错处理、以及最终一致性等其他分布式系统的问题,副作用问题明显。
但微服务的优势还是显而易见,是诸多技术问题的克星。如多人开发一个模块/项目,提交代码频繁出现的大量冲突,以及模块间严重耦合、互相依赖,每次变动需要牵扯多个团队,或是单次上线需求太多,风险大,主要业务和次要业务耦合,横向扩展流程复杂等。产生这些问题的团队一定是适宜微服务的。
微服务落地——单体结构拆分满足用户需求
2019 年,据 CNCF 统计显示,两年之内,企业微服务的落地将呈现爆发式增长,在生产业务系统里,增速可达到 200%。如今,70%的互联网企业都在承认微服务架构带来的发展,并在微服务治理以及应用方面花费了颇多精力。
在微服务发展的几十年时间里,人们越来越发现,微服务架构不只是应用核心功能间的松散耦合,它还涉及重组开发团队、如何进行服务间通信以应对不可避免的故障、满足未来的可扩展性并实现新的功能集成等方面。微服务对于企业未来发展的助力不容小觑。
华为云互联网解决方案总经理白雁提到:
微服务落地经历了三个时段发展:第一代是单体架构,单体应用是常用架构,如大企业内部的OA、ERP系统,采用单体架构是常见选择;第二代是SOA架构,最早是为解决企业内部系统的打通问题,通过ESB企业服务总线的方式解决的,但企业总线本身会成为瓶颈,而随着互联网业务的快速发展;第三代微服务进化成了更为先进的Service Mesh架构。
广州驴迹科技有限责任公司刘道平表示:
当其企业服务器上的用户裂变引流成倍增长,单体架构模式下的数据库早已没有办法满足用户需求,对RDS消耗巨大,单体应用才开始拆分成服务,微服务的应用优势显著,但方向仍在探索。
但微服务也并非没有问题,深圳市大辰科技有限公司郑学明在现场讲到:
在企业落地微服务后,面临很多问题,如侵入式架构对开发人员要求较高,没有专业的管理,在后期微服务平台的弹性和治理缺陷都暴露出来,未来想要向非侵入式方向转变,但相比大公司平台还缺少一定规范。
(与会嘉宾在现场分享和讨论)
华为云开源 Service Comb,助力企业微服务治理
打造开源的管理化平台
大部分系统一开始采用的是单体架构,企业系统首先做的是模块化。而随着系统变得越来越复杂,模块/服务间的边界发展越来越清晰,这时的微服务重构转型就可顺其自然。但这只是理想状态,大部分企业还面临着“边走边看”的 bug,微服务如何治理,如何进行再重构是大部分企业都头疼的问题。
其中有两方面问题最为常见,一是如何对 Service Mesh、Service Cloud、Dubbo 进行选择;二是团队在接入微服务后遇见了一些问题,如做系统前的分析得不到位,服务拆错或拆多,后期更正很难。针对这一系列问题,在本次闭门会中,华为云专家给出了解决方案。
前主流的微服务框架可分为两类,一类是基于 SDK 方式,针对 JAVA 语言,可以提供完整的 SDK 为企业做微服务开发,典型代表就是华为云 CSE。另一种则是 Service Mesh 的方式,与语言无关,通过非代码侵入的方式,实现对微服务的治理,典型代表是华为云应用服务网格 ASM。
配套工具的生成也是重要一环,其包括契约开发的工具,如 API 自动开发,可以通过契约开发的工具模版,提升代码自动生成的能力,以及自动化测试的能力。在企业完整的微服务改造中,可提供从适用性的评估到微服务的改造的整体咨询。
另外就是微服务的管理平台,比如服务的注册、配置和相关的治理,包括安全管控等因素,安全性重视是重要一环。华为云开源 Service Comb 的整个特性中,最亮眼的就是安全性,这是原则也是底线。另外,面向比较复杂的应用开发,可以通过微服务的管理平台确保事务一致性。
可接入一站式开发管理平台
结合微服务框架能力,一站式的开发管理平台 Services Stage 应用范围更广,微服务化引擎可扩展出原代码对接,以及后续需要的上线部署。结合华为云的云容器引擎,可以把整个应用部署到云容器引擎上,包括对接 CCI 等的部署。
运营生命周期管理以及配套运维
企业业务部署中,华为云可提供通用的如数据库等的通信键,可有一系列的功能对接服务。还可通过 API 进行无缝对接,提供对外的发布和相关的计费能力。其中,整套 Service Stage 服务将提供完备的端对端的管理平台。
ServiceMesh 技术的深度增强
以 Istio 为代表项目的 Service Mesh 是目前最火爆的技术,华为云早在 2018 年就在全球首发了 Istio 的商业版本应用服务网格(ASM),对各项能力进行了增强。在性能上,由于系统中 Service Mesh 相对于传统 SDK 方式会有部分流量绕行,导致了部分性能的损耗,而华为云将其性能增强后,损耗可降低 30%;第二是在运维和可靠性上分析上,华为云提供了全链路可视化监控与分析能力,让问题定位更轻松。
(7 月 23 日微服务闭门会嘉宾合影)
5G+X 联创营 携手企业共创 5G 新生态
除了对于微服务的切入和问题解决思路的思考外,7 月 23 日,由华为云与极客邦联合举办的「企业微服务落地的那些实践」闭门会上,华为云解决方案架构师瞿文明还介绍了 5G+X 联创营的入营攻略,讲述了企业在新的 5G 时代如何更好迎接变化。
在新基建盛行,产业落地与新兴技术的不断结合的征程中,华为云“5G+X”联创营顺势而为,对于企业间的双向合作和行业间的联合创新缔造了新的平台。从定期的技术及商业探讨、产品开发指导、开辟线上联创专区、创新场景孵化、品牌联合营销、伙伴认证服务六个方面实现双向联合。
瞿文明表示,华为提供底层资源包括云,边缘计算,以及 AI 技术,包括鲲鹏计算能力,昇腾 AI 算力,边缘云计算节点,华为云编码技术,音视频能力等等。利用这些底层技术和能力,华为云将携手伙伴一起孵化新场景,新方案。例如,华为云和虎牙一起发布了昇腾 AI 内容审核业解决方案,和游爱一起发布了 5G 云游戏互动直播解决方案,和瞬玩发布了 5G 众播互动解决方案。截止目前华为云已经和 110 多家创新伙伴进行合作,推出了 20 多类创新方案和应用。
5G 时代下, 5G+X 联创营相当于华为云为各个企业家提供的入口,旨在与众多企业联合。从在线教育、智慧电商、新媒体、5G 直播等等各个场景中,孵化出新的解决方案,并且对于新的场景能够提供开发、测试以及部署资源的支持以及后期的市场部署。
未来华为云将继续聚焦当下技术趋势,挖掘企业痛点,持续举办 5G+X 联创营创新活动,让更多企业加入进来,聚焦技术,赋能行业,携手共建 5G 新生态。
如果你也想加入,点击阅读原文,了解更多“5G+X”联创营信息。
评论