System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 聚合查询方法、装置、介质及电子设备制造方法及图纸_技高网

聚合查询方法、装置、介质及电子设备制造方法及图纸

技术编号:44879312 阅读:6 留言:0更新日期:2025-04-08 00:17
本公开属于数据库技术领域,涉及一种聚合查询方法、装置、介质及电子设备。该方法包括:获取第一聚合的第一配置信息,并根据第一配置信息拦截第一聚合的第一查询结果;根据第一配置信息从第一查询结果中提取目标参数,并获取第二聚合的第二配置信息,第二聚合是以第一聚合为前提存在的;根据目标参数调用第二配置信息得到第二查询结果,并将第二查询结果合并到第一查询结果得到目标查询结果。本公开大大降低了跨聚合查询的实现难度和维护难度,避免了传统方式需要前端或者后端开发介入的问题,原有的后端微服务、聚合的划分及边界不会受到影响,保证了后端原有的聚合隔离性,也保留了聚合间的高内聚、低耦合的特性。

【技术实现步骤摘要】

本公开属于数据库,尤其涉及一种聚合查询方法、聚合查询装置、计算机可读存储介质及电子设备。


技术介绍

1、在基于ddd(domain-driven design,领域驱动设计)的微服务架构设计中,为了保证领域的高内聚低耦合的特性,将领域拆解成不同限界上下文(即微服务)、聚合,但在查询时,有时又需要面对跨服务、跨聚合的查询组装。

2、在采用前端聚合组装查询时,虽然保证了后端聚合的隔离性,但却增加了前端的工作量与维护难度。在采用后端聚合组装-跨聚合查询时,虽然保证了后端聚合的隔离性,但却增加了后端聚合转换的工作量与维护难度。而在采用后端聚合组装-轻量化cqrs(command query responsibility segregation ,命令查询责任隔离)查询时,虽然一定程度减低了跨聚合查询的实现难度,但却仅适用于同一个微服务内的跨聚合组装查询,因为主聚合过分染指了从聚合,耦合度高,破坏了聚合间的隔离性。


技术实现思路

1、为克服相关技术中存在的问题,本公开提供一种聚合查询方法、聚合查询装置、计算机可读存储介质及电子设备。

2、根据本公开实施例的第一方面,提供一种聚合查询方法,应用于应用网关,所述方法包括:

3、获取第一聚合的第一配置信息,并根据所述第一配置信息拦截所述第一聚合的第一查询结果;

4、根据所述第一配置信息从所述第一查询结果中提取目标参数,并获取第二聚合的第二配置信息,所述第二聚合是以所述第一聚合为前提存在的;

>5、根据所述目标参数调用所述第二配置信息得到第二查询结果,并将所述第二查询结果合并到所述第一查询结果得到目标查询结果。

6、可选地,所述目标参数,包括:上下文参数和鉴权参数;

7、所述根据所述目标参数调用所述第二配置信息得到第二查询结果,包括:

8、根据所述上下文参数更新所述第二配置信息,并根据更新后的第二配置信息和所述鉴权参数发起请求,以得到第一响应结果;

9、解析所述第一响应结果,并根据所述第二配置信息从解析后的第一响应结果中提取出第二查询结果。

10、可选地,所述目标参数,包括:上下文参数和鉴权参数;

11、所述根据所述目标参数调用所述第二配置信息得到第二查询结果,包括:

12、根据所述第二配置信息确定第一查询类型,并按照所述第一查询类型对所述上下文参数进行转换得到转换后的上下文参数;

13、根据转换后的上下文参数更新所述第二配置信息,并根据更新后的第二配置信息和所述鉴权参数发起请求,以得到第二响应结果;

14、解析所述第二响应结果,并根据所述第二配置信息从解析后的第二响应结果中提取出第二查询结果。

15、可选地,所述按照所述第一查询类型对所述上下文参数进行转换得到转换后的上下文参数,包括:

16、获取所述上下文参数中的多个参数值,并根据所述第一查询类型和所述第二配置信息以第一字符合并所述多个参数值得到转换后的上下文参数;或

17、获取所述上下文参数中的多个参数值,并根据所述第一查询类型和所述第二配置信息以第二字符合并所述多个参数值得到转换后的上下文参数;或

18、获取所述上下文参数中的多个参数值,并根据所述第一查询类型和所述第二配置信息以目标格式合并所述多个参数值得到转换后的上下文参数,所述目标格式由所述第一字符和第三字符构成。

19、可选地,所述目标参数,包括:上下文参数和鉴权参数;

20、所述根据所述目标参数调用所述第二配置信息得到第二查询结果,包括:

21、根据所述第二配置信息确定第二查询类型,并按照所述第二查询类型遍历所述上下文参数得到多个参数值;

22、根据所述多个参数值分别更新所述第二配置信息,并根据更新后的第二配置信息和所述鉴权参数分别发起请求,以得到多个第三响应结果;

23、合并所述多个第三响应结果得到响应结果数组,并解析所述响应结果数组;

24、根据所述第二配置信息从解析后的响应结果数组中分别提取出多个结果属性值,并合并所述多个结果属性值得到第二查询结果。

25、可选地,所述将所述第二查询结果合并到所述第一查询结果得到目标查询结果,包括:

26、当所述第二查询结果为目标类型,且所述第二配置信息中包括目标字符时,获取所述第二查询结果中的一个结果属性值,并将所述结果属性值合并到所述第一查询结果中;

27、获取所述第二查询结果中的另一结果属性值,并将所述另一结果属性值继续合并到所述第一查询结果得到目标查询结果。

28、可选地,所述将所述第二查询结果合并到所述第一查询结果得到目标查询结果,包括:

29、当所述第二查询结果为目标类型,但所述第二配置信息中未包括目标字符时,将所述第二查询结果合并到所述第一查询结果得到目标查询结果,所述第二查询结果中包括多个结果属性值。

30、根据本公开实施例的第二方面,提供一种聚合查询装置,应用于应用网关,包括:

31、结果拦截模块,被配置为获取第一聚合的第一配置信息,并根据所述第一配置信息拦截所述第一聚合的第一查询结果;

32、参数提取模块,被配置为根据所述第一配置信息从所述第一查询结果中提取目标参数,并获取第二聚合的第二配置信息,所述第二聚合是以所述第一聚合为前提存在的;

33、结果合并模型,被配置为根据所述目标参数调用所述第二配置信息得到第二查询结果,并将所述第二查询结果合并到所述第一查询结果得到目标查询结果。

34、根据本公开实施例的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序指令,该程序指令被处理器执行时实现本公开第一方面所提供的任一项的聚合查询方法的步骤。

35、根据本公开实施例的第四方面,提供一种电子设备,包括:

36、处理器;

37、用于存储处理器可执行指令的存储器;

38、其中,所述处理器被配置为:执行所述可执行指令以实现本公开第一方面所提供的任一项的聚合查询方法的步骤。

39、本公开的实施例提供的技术方案可以包括以下有益效果:

40、在本公开的示例性实施例提供的方法及装置中,一方面,基于应用网关进行第一聚合和第二聚合的配置,大大降低了跨聚合查询的实现难度和维护难度,避免了传统方式需要前端或者后端开发介入的问题,另一方面,在应用网关进行聚合查询确定目标查询结果时,原有的后端微服务、聚合的划分及边界不会受到影响,保证了后端原有的聚合隔离性,也保留了聚合间的高内聚、低耦合的特性。

41、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

本文档来自技高网...

【技术保护点】

1.一种聚合查询方法,其特征在于,应用于应用网关,包括:

2.根据权利要求1所述的聚合查询方法,其特征在于,所述目标参数,包括:上下文参数和鉴权参数;

3.根据权利要求1所述的聚合查询方法,其特征在于,所述目标参数,包括:上下文参数和鉴权参数;

4.根据权利要求3所述的聚合查询方法,其特征在于,所述按照所述第一查询类型对所述上下文参数进行转换得到转换后的上下文参数,包括:

5.根据权利要求1所述的聚合查询方法,其特征在于,所述目标参数,包括:上下文参数和鉴权参数;

6.根据权利要求3或5所述的聚合查询方法,其特征在于,所述将所述第二查询结果合并到所述第一查询结果得到目标查询结果,包括:

7.根据权利要求3或5所述的聚合查询方法,其特征在于,所述将所述第二查询结果合并到所述第一查询结果得到目标查询结果,包括:

8.一种聚合查询装置,其特征在于,应用于应用网关,包括:

9.一种计算机可读存储介质,其上存储有计算机程序指令,其特征在于,该程序指令被处理器执行时实现权利要求1~7中任一项所述方法的步骤。

10.一种电子设备,其特征在于,包括:

...

【技术特征摘要】

1.一种聚合查询方法,其特征在于,应用于应用网关,包括:

2.根据权利要求1所述的聚合查询方法,其特征在于,所述目标参数,包括:上下文参数和鉴权参数;

3.根据权利要求1所述的聚合查询方法,其特征在于,所述目标参数,包括:上下文参数和鉴权参数;

4.根据权利要求3所述的聚合查询方法,其特征在于,所述按照所述第一查询类型对所述上下文参数进行转换得到转换后的上下文参数,包括:

5.根据权利要求1所述的聚合查询方法,其特征在于,所述目标参数,包括:上下文参数和鉴权参数;

【专利技术属性】
技术研发人员:罗恒全赵赫何光宇
申请(专利权)人:东软集团股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1