随着互联网、云计算、大数据等技术的快速发展,越来越多的企业将企业上云、数字化提上了信息化之后的日程。
随后,软件架构微服务重构、应用自动化运维、容器化的强烈需求催生了众多的PaaS平台。
服务治理平台的难点凸显。
与此同时,也出现了很多针对微服务的RPC框架和微服务治理平台。
每个框架和平台都有自己的优势和自己独特的适应场景。
与单体应用和SOA架构相比,微服务的小团队开发运营、复杂度可控、独立伸缩、灵活组合等优势逐渐凸显,受到架构师和技术人员的引入和推崇。
但同时也导致了配置复杂、事务不可控等诸多问题。
如何妥善解决微服务中暴露出的各种问题,成为各个服务治理平台的重点和难点。
在软件架构为微服务之前,各个服务通过RestFul接口或RPC进行互连和调用,实现面向服务、解耦的功能。
引入了很多成熟的RPC框架。
例如:RPC调用是微服务治理的基础,但单独的RPC并不能称为微服务。
微服务的核心功能还应该包括服务注册、发现、动态和可视化配置、限流和熔断、链路跟踪和分析、异步调用、数据一致性处理、API网关等。
不同厂商的框架和产品介绍以上都是围绕上述核心功能进行实现和集成的。
每个产品都有不同的复杂性和局限性,并且与自己制造商的其他产品密切相关。
用友云服务治理平台正是因应这种情况而诞生。
用友云主要面向企业级应用,在TOB领域有独特的技术特点和需求。
用友云下的微服务治理需要与自己的DevOps平台、容器云平台和数据平台协调。
协同和能力聚合。
用友云服务治理平台团队在学习、吸收其他产品优点的同时,针对自身产品的需求进行改进和适配,与用友云开发者中心、数据平台、租户中心、用户中心等全面融合,并推出了更适合您的用友云服务管理平台。
用友云服务管理平台是用友云平台(iuap)基础平台服务(gPaaS)的核心能力。
在企业向“互联网化”方向转型的过程中,软件产品的开发需求变化越来越频繁,对技术中台的要求也越来越强烈。
统一的gPaaS基础能力逐渐被认可,越来越多的企业期待。
有一个基础平台来支持公司快速增长的业务。
gPaaS基础平台属于iuap产品家族,提供DevOps能力、容器云能力、服务治理能力、微服务编排能力。
gPaaS基础平台简化了多种基础设施带来的复杂性,打通了一体化的开发和运营流程,为传统服务架构向微服务架构和服务治理的转变提供了最佳的方法论和工具集,并支持微服务的可视化编排。
用友云服务管理平台具有以下特点: 用友服务管理平台自2011年成立以来,经过团队的不断打磨,已经开发出多个版本。
支持的应用数量达到多个,API数量达到近3万个。
目前使用服务治理平台的云产品和组织包括资本云、财务云、人力资源云、协作云、用友审计、用友能源等,支持的大型项目包括中国建筑、中国广核、DIWORK用友云服务治理平台提供RPC调用框架、异步调用框架、服务注册发现、配置中心、元数据、一致性框架等基础中间件,并预留插件机制的扩展,方便开发者使用和整合;它还为中间件容器层提供了类隔离和组件加载机制,避免与业务应用引用的第三方组件版本发生冲突;提供统一的门户,直观地管理和查看远程服务接口信息、调用链路日志、统计信息和评估。
信息,动态控制特定接口和方法的权限和流量限制;提供限流、链路跟踪等组件,保证服务的稳定性和可用性。
同时还支持与外围的服务网关API Link对接,支持使用IDE进行微服务编排和一键发布。
由几个核心技术模块组成:注册中心、元数据、控制台、配置中心、基础SDK、链路计算、限流断路器、异步调用和一致性适配组件、IUAP和DUBBOX适配组件等,大致可以分为分为两类:微服务SDK(中间件)和后端支持服务。
微服务SDK:通过核心插件机制和类加载机制将各个组件集成在一起,形成整体的对外服务。
它有两个鲜明的特点: 1:支持SPI扩展的插件机制,组合灵活,易于扩展; 2:基于ClassLoder的类隔离机制隔离组件,避免冲突。
通过服务治理平台的SDK,业务方可以轻松、快速地将微服务能力融入到业务工程中,实现技术架构上微服务化的目标。
后端支持:核心后端支持包括注册中心、元数据、控制台和链路计算、监控、配置中心、权限控制等。
用友云平台微服务治理团队对阿里云平台推出的分布式服务调用和管控平台EDAS的架构进行了分析和比较。
在借鉴其优点的同时,它根据自身的特点,将各个模块拆分为异步调用。
、多套环境支持、容器依赖去除等,进行了针对性的适配;同时在与开发者中心、用户中心、权限中心等服务集成方面扩展了支持,支持轻量级独立部署,为专业化减轻负担提供了平台。
为了解决微服务实现的问题,用友云服务管理平台的几个核心功能包括基础RPC框架、注册中心元数据、配置中心、链路跟踪、异步一致、限流熔断等。
服务治理平台还遇到了微服务的几个核心功能实现和实现过程中遇到的一些困难。
这也是很多厂商和平台共同的难点。
针对这些关键点,用友云提出并实现了多种适合自身场景的合理解决方案: 1、类隔离机制和插件机制:JAVA版本的SDK在与各种业务集成时会遇到很多问题应用程序。
三方组件版本冲突的问题给业务集成商带来了困扰。
用友云服务治理平台从3.5版本开始进行了优化,引入了类隔离机制,引入了冰山(iceberg)思想。
它内部加载其所依赖的三方组件,不会与外部业务三方引用产生冲突,极大地简化了集成难度。
同时,通过插件机制将服务治理平台的各个组件进行组合,为后续的扩展和能力提升打下坚实的基础。
2、动态配置:业务应用的微服务拆分,使得业务项目的配置文件更加繁多、分散。
微服务的权限和流量的实时控制还需要对各种配置进行动态管理。
因此,配置中心的后端服务和前端SDK发挥着更重要的作用。
服务管理平台的SDK针对每个使用的客户端内置了配置中心SDK。
它采用长轮询的方式近乎实时地感知远程配置文件的变化,从而及时响应变化。
云操作提供RestFul接口和可视化界面,操作简单实用。
3、异步调用数据的最终一致性:异步调用框架提供了可靠的消息组件,完善了队列的权限认证体系,简化了异步调用的开发方法。
业务开发只需要简单的配置和注解即可完成异步操作。
同时,异步交易控制台可以在云端可视化下发命令,并为错误交易提供重试机制。
服务治理平台的SDK将eos、cc等自适应组件有机结合,对外提供一体化服务:微服务治理发展趋势与前景。
经过长期的开发和训练,服务治理平台已经用于分布式服务调用和运行。
维护控制和服务治理、生命周期管理和统一控制台、数字化监控和运营、开发支持扩展和兼容性等都有积累和输出。
我们也与其他成熟的产品和框架进行比较,吸收和优化,构建和完善自己的微服务能力体系。
但同时,我们也要把握技术的发展趋势,站在发展的最前沿。
未来将在支持服务搜索和集市、服务编排与网关、服务网格、服务监控等更有效的结合等方面不断拓展。
用友云服务治理平台的发展并不是原生的、独立的。
服务治理平台、DevOps平台、容器云平台共同成为各类云产品和服务成功迁移上云的三把尖刀,为其底层技术支撑提供了有力保障。
相信三把尖刀也将在技术中心体现出越来越重要的价值。
内部的有机整合需要外部的拓展和延伸。
围绕微服务合理组合服务治理平台、API Link、服务编排等,使微服务利用率更高、可组合性更强。
服务治理平台作为用友云平台下三大战略(技术中平台、业务中平台、数据中平台+混合云、生态链)下技术中平台的核心产品,也将展现出更强的战斗力。