微服务架构下基于元数据实现服务编排参数自适配处理的系统的制作方法

文档序号:37807378发布日期:2024-04-30 17:17阅读:10来源:国知局
微服务架构下基于元数据实现服务编排参数自适配处理的系统的制作方法

本发明涉及计算机领域,尤其涉及微服务架构下服务编排,具体是指一种微服务架构下基于元数据实现服务编排参数自适配处理的系统。


背景技术:

1、随着数字化转型的迅猛发展,公司、组织业务的不断扩张,需求不断的增加、用户量不断增加,传统单体架构已经无法适应云计算时代应用的快速变化,面临着越来越多的挑战;微服务架构则被认为是未来建设新一代分布式架构应用的方向,通过将应用和服务分解成更小的、松散耦合的组件,它们可以更加容易升级和扩展。微服务拆分后,企业需要将不同的restful风格的api服务通过编排的方式访问,并在不同的微服务间处理返回数据,需要开发人员通过手工编码的方式对服务参数及返回值进行组装、数据校验、数据转换、数据脱敏等,导致多种可能的错误,需要一种基于元数据定义服务参数及返回值来实现服务编排参数自适配的转换方式,支撑业务服务参数与返回值的自动快速编排与组装。

2、针对目前的服务编排参数组装,通用的做法是开发人员通过编码的方式实现对参数的组装,在组装过程中,从服务编排的输入参数、服务编排的上下文共享数据、服务图元调用的返回值中获取需要的数据,根据业务需要,组装服务编排后续图元需要的输入参数,其通常存在以下技术不足:

3、不足1:通过编码的方式实现服务参数组装,需要开发人员手工编码,对输入参数的数据定义需要精确了解,该方法实现的复杂度高,容易出现错误,导致系统运行期的各种问题;

4、不足2:由于是手工编码实现服务参数组装,当业务需求发生变化导致接口变化时,需要针对每一个服务接口进行重新组装,导致应用重新部署,且对应用的侵入性高,不灵活;同时当同一个接口在多个服务编排中出现的时候,会导致多处的代码修改,无法做到通过简单的配置来实现参数的自动转换;

5、不足3:通过编码的方式实现服务参数的组装,由于缺乏统一的数据标准,当组装的数据需要进行转换、规则校验、数据脱敏等公共方法处理时,需要在每个服务参数组装的地方进行硬编码来实现,导致这些规则代码散落在应用多处,当需要进行调整的时候,无法实现统一的集中化管理。


技术实现思路

1、本发明的目的是克服了上述现有技术的缺点,提供了一种能够有效克服上述技术缺陷的微服务架构下基于元数据实现服务编排参数自适配处理的系统,具有以下技术目的:

2、1、通过提供基于元数据实现服务编排参数自适配的方式,实现一种参数自动化、无侵入方式的参数组装机制,降低人工编写代码的复杂度,增强微服务系统的健壮性;

3、2、通过提供元数据管理能力,定义企业全局的数据字典、数据报文,统一企业全局的数据标准,为服务编排或者服务图元的参数、返回值、全局共享数据等提供一定的数据定义标准,支持对各类数据的统一数据转换、规则校验、数据脱敏处理能力;

4、3、通过元数据管理与可配置化的服务组装能力,支持在微服务运行期实现服务参数进行数据的自适配填充,在服务接口参数发生变化时,通过配置化的能力,实现参数的动态自动组装,避免应用系统的重启,提升微服务系统的可用性。

5、为了实现上述目的,本发明的微服务架构下基于元数据实现服务编排参数自适配处理的系统如下:

6、该微服务架构下基于元数据实现服务编排参数自适配处理的系统,其主要特点是,所述的系统包括:

7、报文元数据管理模块,用于对数据字典以及数据报文进行相应的定义与管理;

8、服务定义模块,与所述的报文元数据管理模块相连接,用于负责将服务定义中的服务参数、返回值与所述的报文元数据管理模块中定义的数据字典、数据报文进行绑定,并为服务提供标准化的数据模型管理;

9、服务上下文管理模块,与所述的报文元数据管理模块相连接,用于负责服务编排中共享数据的存放与管理;以及

10、服务参数组装模块,与所述的服务定义模块以及服务上下文管理模块相连接,用于实现服务参数的推荐与映射处理,提供数据类型校验检查,并在系统运行期为服务参数提供进行数据的自适配填充与数据格式自动转换的处理。

11、较佳地,针对所述的数据字典的定义包括字典基本属性、技术属性、业务属性三部分;其中,所述的基本属性包括:命名空间、英文名、中文名、版本号;所述的技术属性包括:数据类型、长度、校验规则、脱敏规则;所述的业务属性包括:业务描述、业务系统;且所述的数据字典的定义采用xml文件进行存放,其对应的规格定义文件采用xsd进行描述。

12、较佳地,针对所述的数据报文的定义包括报文的命名空间、英文名、中文名、报文描述、版本、报文项;且所述的数据报文的定义采用xml文件进行存放,其对应的规格定义文件采用xsd进行描述。

13、较佳地,所述的报文元数据管理模块对所述的数据字典进行如下管理:创建数据字典、更新数据字典、删除数据字典以及加载数据字典;

14、所述的报文元数据管理模块对所述的数据报文进行如下管理:创建数据报文、更新数据报文、删除数据报文以及加载数据报文。

15、较佳地,所述的服务定义模块具体进行如下处理:

16、将服务定义中的服务参数、返回值与所述的报文元数据管理模块中定义的数据字典、数据报文进行绑定,为服务定义中的服务参数、返回值纳入标准的数据管理能力,并对所述的服务参数、返回值进行数据校验和数据脱敏处理;

17、且所述的服务定义模块提供@datadict、@datamessage两个注解,其中@datadict注解支持将服务参数、返回值的属性与具体的数据字典定义绑定,@datamessage支持将服务参数、返回值与具体的数据报文定义绑定。

18、较佳地,所述的服务上下文管理模块具体进行如下处理:

19、用于为每个服务编排提供一个服务上下文,并在每个具体的服务编排声明周期中进行数据共享,服务编排上下文存放服务参数、服务返回值、全局共享数据,支持将服务图元的参数、返回值直接转换为全局共享数据;以及

20、所述的服务上下文管理模块还包括用于创建服务上下文、销毁服务上下文、为服务上下文增加共享数据、为服务上下文更新共享数据、为服务上下文删除共享数据以及为服务上下文查询共享数据的操作。

21、较佳地,所述的服务参数组装模块包括进行如下处理:

22、为服务编排图元上的输入参数实现推荐与映射绑定,其中绑定的数据来源支持从服务参数、返回值、数据上下文中的共享数据自动匹配,或者由开发人员配置指定;在系统运行期,根据建立的映射绑定实现服务编排图元输入参数的自动数据填充与数据格式自动转换,当服务参数发生变化时,将以热更新方式重新加载新的映射规则;并根据服务编排图元输入参数上绑定的数据字典和数据报文,进行服务编排图元输入参数的数据校验、返回值数据脱敏处理。

23、较佳地,所述的服务参数组装模块具体包括如下处理过程:

24、(1)将服务编排参数、返回值、服务上下文中的共享数据映射到服务编排图元的输入参数上进行映射绑定;

25、(2)针对已完成的输入参数映射绑定,进行实际数据值的自动转换处理;

26、(3)根据所述的服务编排图元输入参数不同的属性绑定的数据字典上定义的数据校验规则,对所述的服务编排图元输入参数的属性值进行数据校验;如果校验通过则进入处理过程(4),否则,直接中止当前服务编排调用;

27、(4)当所述的服务编排图元所有输入参数处理结束后,执行服务编排图元对应的业务逻辑;

28、(5)根据所述的服务编排图元返回值不同的属性绑定的数据字典上定义的数据脱敏规则,对所述的服务编排图元输入参数的属性值进行数据脱敏检查。

29、较佳地,所述的映射绑定包括第一种映射方式以及第二种映射方式,其中,

30、所述的第一种映射方式具体为:将服务编排参数、返回值、服务上下文中的共享数据直接映射到服务编排图元输入参数上;

31、所述的第二种映射方式具体为:服务编排图元的输入参数的不同属性与来自与服务编排参数、返回值、服务上下文中的共享数据中的不同属性进行属性级别映射绑定。

32、采用了本发明的该微服务架构下基于元数据实现服务编排参数自适配处理的系统,由于提供了报文元数据管理、业务数据与元数据的映射绑定、服务参数自动组装能力等,从而实现了一种基于元数据实现服务编排参数自适配的能力;同时通过提供数据字典数据校验、数据脱敏等规则,实现业务数据的自动化的数据安全校验、数据安全脱敏能力,提升业务数据的数据质量,避免不同微服务系统间数据标准不一致,提升微服务系统的业务健壮性;另外该技术提供配置的方式实现了参数的自动组装,减少了开发人员编码出错的风险,在服务接口参数发生变化时,通过配置化的能力,实现参数的动态自动组装,避免应用系统的重启,提升微服务系统的可用性,具备较为突出的推广价值。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1