当前位置: 首页 > 科技观察

三种方式实现高效的企业级微服务治理_0

时间:2023-03-19 18:30:57 科技观察

【.com快译】众所周知,在一些中大型应用中,企业通常拥有上千个微服务。同时,每个团队在选择自己的技术栈方面也有一定的自主权。那么,企业不可避免地需要借助微服务的治理机制来避免构建那些难以管理的、不稳定的架构。而如果没有强有力的微服务治理策略,企业将面临以下挑战:缺乏适当的机制来监控和衡量现有产品的性能,从而失去新产品的创新能力。没有合适的平台,企业将无法获得整体洞察,无法与IT团队一起进行规划和统筹设计。各种过时的文件会严重影响产品交付的敏捷性。自治团队和系统无法通过平台进行互操作和协作,企业将因为失去敏捷性而无法遵循联邦开发的原则。虽然每个团队都应该遵循标准化的政策,但任何集中式治理方法都可能违反微服务架构的核心原则:“为团队提供自主性和敏捷性”。因此,当面对多系统、复杂运行的企业级集成环境时,我们需要解决的问题是:如何有效地提供去中心化的治理方案?在实施微服务治理策略时,我们经常需要考虑Paradigmshift。也就是说,各种治理策略应该符合微服务的核心原则,即:各种独立自包含的服务、单一职责、跨职能团队,需要与业务、策略和最佳实践保持一致。在这里,我们提出三种方法来实现高效的企业级微服务治理,分别是:基于领域、以产品为中心和平台思维。基于这三种方法,我们将能够为企业提供一个符合微服务原则的治理平台,使企业能够自动集成各种全球政策、标准和指南。下面,我们一一探讨。基于领域的微服务架构的关键原则之一是遵循领域驱动设计(DDD)。也就是说,我们的治理策略应该关注“领域”,每个业务或领域专家都应该根据DDD定义信息模型。同时,企业还应该能够根据信息模型为各个领域定义相应的业务能力。以产品为中心的企业应该能够根据现有的信息模型和业务功能轻松定义各种产品,并能够为产品定义相应的业务KPI。在治理方面,我们还应该注意为企业提供现有产品、API、服务和实际KPI的整体视图。这些将帮助企业保持业务能力与最终客户期望之间的一致性,并快速识别和评估创新产品的有效性。平台思维借助平台思维,企业应该能够为业务和IT提供一个自助式的服务管理平台,使两者相互协调、协同。组织应该能够通过模板定义全球政策、标准和指南。团队可以根据他们为自己的领域确定的工具和技术构建开发人员模板。各种技术工件应该通过模板自动生成,并通过CI/CD管道部署到相应的运行时环境,从而实现政策、标准和指南的自动实施。下图描述了一个业务架构。它是贯穿整个开发生命周期的嵌入式、自治服务平台。如上图所示,企业可以通过定义或上传现有的信息模型来建立各种业务能力,并快速定义新产品及其预期的KPI。该团队设计和创建API定义,为微服务和业务事件定义那些消费者驱动的契约,以及各种非功能性需求,以实现业务定义的产品。同时,他们应该能够定义各种策略、最佳实践、访问规则、数据质量规则,并上传与遗留资产、数据源和集成点相关的各种元数据(meta-data)信息。这些实践帮助团队在设计时定义从消费者到API和微服务的业务能力、SOAP服务等旧资产,甚至数据源的端到端线性关系。我曾经有一个客户,他的企业有4,000到5,000个微服务,甚至同一个微服务的10到20个版本映射到不同的消费者。他们面临的挑战是,他们必须依靠运行时指标来确定客户正在使用哪个版本,并通过进行影响分析来改善当前的敏捷性问题。在实践中,他们发现以上三个自助服务平台可以帮助他们建立端到端的线性关系。此类平台的另一个重要功能是使团队能够定义各种开发人员模板,以便映射受控元数据,例如:API定义、消费者驱动的合同、集成点、策略、访问规则、数据质量规则等数据价值。这些模板应通过源代码控制管理(SCM)进行版本控制,并与CI/CD管道集成以自动生成技术工件(如下图所示)。这里的技术工件包括:API代理、微服务和业务事件的框架、层与层之间的映射、单元测试用例、集成测试用例、来自消费者驱动的契约存根、API文档等。这些将帮助企业根据各种不同的需求产生一致的输出。控制元数据值,让他们自己的团队更专注于业务逻辑,并促进IT部门持续交付业务价值。此外,通过各种数据质量规则和自动化管理策略,我们还应该将测试、基础安全和认证构建到CI/CD流程中。那些带有CI/CD管道的模板,以及线性集成点上的元数据,将使我们能够将集成逻辑聚合到可以独立控制和更新的管道中。这不仅可以支持联合开发,还可以进一步加快产品的“上市速度”。通过模板自动生成的技术工件,正如管理大师彼得·德鲁克所说:“我们无法改进和管理无法衡量的东西。”可见衡量性能是另一个值得关注的点。如上图所示,我们要及时将运行环境中的各种指标反馈给平台,计算出实际的KPI和NFR(非功能性需求),进而帮助公司和团队将实际情况与计划进行对比。使团队尽早了解变化,并根据实际情况做出正确的决策。可以得出结论,为了有一个有效的机制来实现微服务的治理,企业的主要推动方向应该是通过以领域为基础、以产品为中心的模型来构建自服务治理平台。通过平台提供的治理方式和一致的微服务原则,企业将能够快速交付具有创新特性的新产品。同时,自助服务平台为业务和IT部门之间的协作和协调提供了桥梁,可以促进团队更加专注于交付真正的业务价值。那些受监管的政策、标准和指南模板也在实施过程中产生可重复的技术输出。通过采用以上三种微服务治理方式,您的企业将能够在不影响治理的情况下实现设计时和运行时的独立性,先进的联合开发模型,加速架构的持续迭代。原标题:高效企业微服务治理的3个关键,作者:AsokJacobPayyapilly