作者 | 彦林
随着开源和云计算的推进,云原生微服务作为核心的技术保持着 20%左右的高速增长;随着微服务技术的成熟,门槛大幅降低,开始渗透到各行各业;一方面人力成本不断上涨,采用微服务提高研发效率势在必行;另一方面 90 后成为研发主力,微服务独立、敏捷的优势更受年轻人欢迎。
微服务技术逐渐成熟,微服务核心架构分层愈加清晰,技术标准化和产业化正在形成,火热的服务网格技术逐渐回归理性,云原生网关作为下一代网关技术逐步成型,微服务技术整体进入深水区。
微服务行业趋势(无处不在)
01 微服务行业发展迅速
从行业报告和微服务开源产品关注度上看微服务领域保持 20%+的高速增长,而且国内未来空间依然很大。
- 2018-2023 年,全球微服务市场 CAGR 22.4%,2023 年预计达到$1.8Billion,亚太区市场规模市场份额 35%,仅次于北美地区。(数据来源:Marketsandmakets)。
- 阿里微服务领域开源产品的关注度提升 20%左右,Star 数在过去一年陆续突破 2 万,关注度持续提升。
02 微服务技术平民化
早期采用微服务架构需要一个庞大微服务专业团队和自研一个微服务技术栈,因此只有部分互联网大厂采用,然而随着开源推进,大部分公司只需要选择一个适合自己的开源技术栈,大幅降低技术门槛;随着云厂商推动成本进一步大幅降低,只需 1 万块钱左右就可以具备微服务能力和专业的服务保障,因此数字化升级的各行各业都逐渐采用了微服务架构快速演进。
03 微服务场景更广泛
由于微服务技术门槛和复杂度导致采用成本比较高,早期研发人数仅 10 人左右,子系统超过 5 个才比单体架构效率更高,但是随着微服务技术成熟,微服务和单体应用效率发生变化的点左移,目前研发人数 5 个人左右,子系统超过 3 个做微服务都能获得更高的性价比,并且随着 Serverless 推进,一个 Fuction 就是一个服务,使用场景在不断扩大。
04 微服务投入产出比更高
随着人力成本不断上涨,机器成本不断下降,人力成本比机器成本要高的多,采用微服务能让企业拥有更高的研发协同效率,提升研发人员生产力;企业竞争现在更多是速度的竞争,采用微服务能让数字化系统迭代速度更快,在市场竞争中保持先发优势。
05 微服务更受年轻人欢迎
随着 90 后成为研发主体,他们更喜欢独立、自主、敏捷的研发模式,微服务让他们更加自由的协作,提升研发和协同效率,更快的完成产品迭代。
微服务技术趋势(标准化)
01 微服务架构分层逐渐清晰
微服务架构分层逐渐形成,后端 BAAS 化,客户端轻量化,业务侧 Serverless 化,让业务更加聚焦业务开发,进一步提升研发效率。
02 微服务技术标准逐步形成
Istio/Envoy 成为服务网格控制面和数据面的事实技术标准,微服务竞争进入深水区,服务网格,服务治理,分布式事务,零信任会成为差异化竞争力。
数据面 SidecarProxy 与 Proxyless 模式的融合
由于部分链路 RT 敏感、升级环境受限等因素,Sidecar 模式不能很好的解决,随着 Sidecar 发展推动了数据面的标准化,目前 gRPC 已经支持 xDS 协议,Dubbo 也已经初步具备 xDS 协议的服务发现能力,预计在 3 月份 Dubbo 社区将提供完善的 xDS 服务治理能力支持,完成 SidecarProxy 与 Proxyless 模式的融合。
服务治理数据面透明化,控制面标准化
服务治理数据面将会逐步下沉,与业务逻辑逐步解耦,透明的实现治理技术的演进和升级。在数据面的形态上来看,存在多种形态并存,针对 Java 语言,以 Java Agent 为形态的的服务治理技术正在兴起并逐步成为趋势,针对非 Java 语言,基于 Sidecar 的 Service Mesh 技术正在被越来越多的企业采用,而在控制面,以一套控制面去控制不同数据面的形态成为主流,将逐步统一到以 K8s CRD 为中心的服务治理控制面中。服务治理的范围扩展到以开发,测试,发布,运维,安全等多场景的全生命周期。
分布式事务从多样化到标准化
数据是企业数字化转型中的核心资产沉淀,在微服务架构中应用架构层数据不一致性问题尤为突出。通过框架的方式快速帮助架构开发人员解决数据不一致可能导致的资损商誉问题,使其专注于业务本身的设计和开发是分布式事务的核心价值。在过去实现分布式事务方案复杂多样难以统一,方案与业务耦合严重难以复用,复杂场景一致性难以保证,缺少大厂背书和大规模流量验证难以推动实施,使分布式事务成为了大家能避则避的问题,这也导致了分布式事务领域的发展长期停滞不前。
随着阿里 Seata 的开源,对分布式事务的概念、角色、模型和模式进行了延展和抽象,使其符合微服务的架构设计。通过工程框架的抽象进一步演化为事务的标准,使多种事务方案按照事务标准融合为一站式标准化的事务解决方案。
多语言解决方案标准化
在 Java 领域 阿里微服务 DNS 是最佳实践。
Dubbo+Nacos+Spring-cloud-alibaba/Sentinel/Seata
当然在过去的一年里,我们完成了多语言生态的布局,包括对服务网格/Dapr 生态/Golang 生态的无缝支持,让各种语言都能享受云原生微服务的红利。
03 服务网格技术回归理性
2020 年,27% 的公司正在生产中使用服务网格(比 2019 年增加了 50%),同时也有 23% 的公司目前正在评估服务网格技术(引自 CNCF),相比前几年的热度,与微服务整体增长速度相当,服务网格逐渐回归理性,用户更多在多语言场景和新的业务领域尝试。
04 云原生网关逐步成型
2020年,37% Ingress 实现选择 Envoy(比 2019 年增加了 116%),大量公司基于 Envoy 构建下一代网关技术(引自 CNCF)
随着 K8s 通过 Ingess 将网关标准化,Ingress 作为容器、微服务的连接点,以 Istio 为控制面向下聚合 K8s,Nacos 多种服务,对上控制 Ingress(Edge)/ Sidecar(Runtime)东西南北流量。
随着 Ingress 将网关标准化,网关呈现高集成发展趋势,云原生网关作为下一代网关将流量网关和业务网关二合一,降低 50% 资源成本;集成安全能力从入口建立安全防线;集成服务治理和可观测能力,从入口提高整个网站的高可用;支持单体应用,Nacos,K8s,Serverless 多种服务发现来源,统一接入,统一认证登陆。
总结
随着微服务技术门槛大幅下降,随着企业数字化升级步伐加速,随着云计算的迅速发展,微服务将无处不在;随着行业成熟度逐步提升,随着开源和标准推进,微服务的标准逐步形成,标准形成将进一步助力微服务产业发展,未来可期,因为相信,所以看见!!!