分布式架构下实现跨应用及系统共享业务数据的系统、方法、装置、处理器及其存储介质与流程

文档序号:37270306发布日期:2024-03-12 20:58阅读:11来源:国知局
分布式架构下实现跨应用及系统共享业务数据的系统、方法、装置、处理器及其存储介质与流程

本发明涉及计算机领域,尤其涉及分布式架构下业务数据分级共享领域,具体是指一种分布式架构下实现跨应用及系统共享业务数据的系统、方法、装置、处理器及其计算机可读存储介质。


背景技术:

1、随着数字化转型的需求,企业it应用架构已经由传统单体架构转向分布式架构的应用,分布式架构的应用由于天然的扩展性,更容易支撑大规模用户请求,满足用户日益增长的诉求。通过将应用和服务分解成更小的、松散耦合的组件,它们可以更加容易升级和扩展,不同的组件之间通过相互调用、访问来实现业务场景。在分布式系统构建过程中,需要经常在不同的应用、系统之间进行数据交互、共享、传递,以保障业务的连续性和数据的一致性。由于需要频繁在不同的系统间共享数据,对分布式系统的开发的复杂度导致难度大幅增加,且由于安全问题经常要处理不同系统间对不同数据的权限处理,导致容易出现数据安全问题,需要分布式架构下实现一种跨应用、系统共享业务数据的系统,提供一种便捷、安全、开发简单的共享业务数据能力,满足分布式架构下频繁的业务数据共享与安全访问问题,满足企业it业务变化的诉求。

2、针对目前分布式系统下跨应用、系统共享业务数据的方法通常有三种实现方式,分别是会话共享、分布式缓存(例如redis)共享、参数传递三种方式。会话共享机制,要求应用将需要共享的数据存放在httpsession中,同时将应用部署在web应用服务器(比如tomcat、weblogic等)中,且需要实现集群功能,web应用服务器实现了同一集群下应用的会话共享机制,利用此机制,可以实现同一应用的不同实例之间的业务数据共享;分布式缓存共享机制,是将不同应用的业务数据统一存放在同一个分布式缓存(例如redis)中,不同的应用可以访问分布式缓存中存放的业务数据,实现跨应用或系统的数据共享;参数传递机制,通常是在服务调用的时候,将要共享的业务数据准备好,通过api参数方式进行跨应用间的业务数据传递,对应用的侵入性高、且不灵活。

3、以下针对上面的技术实现方式分析对应的不足:

4、不足1:在会话共享机制中,存在应用系统必须一致的要求,即必须是同一个应用或系统才能进行业务数据共享,当需要和其它系统共享业务数据的时候,无法通过此方法实现;另外该机制下,要求应用或者系统必须部署在web应用服务器中,这就要求应用的开发必须遵循web应用服务器的标准和规范,对应用、系统有较高的侵入性。

5、不足2:分布式缓存共享机制中,支持异构应用的业务数据共享,并提供基于用户的简单权限管理,当面对不同应用需要共享不同数据,且有不同的数据访问区域时,该机制就会出现:规则复杂且维护困难、不支持简单的配置实现业务数据共享能力、不适合频繁变更权限的场景等不足之处。

6、不足3:参数传递机制,是通过改造应用系统的api接口来实现应用或系统间的业务数据共享,该机制对应用系统具有强侵入性,当共享数据需要变更时,需要重新修改应用的api接口,重新发布时需要应用停止服务,对应用的高可靠性是极大的损害,该机制不灵活。


技术实现思路

1、本发明的目的是克服了上述现有技术的缺点,提供了一种满足灵活性好、操作简便、适用范围较为广泛的分布式架构下实现跨应用及系统共享业务数据的系统、方法、装置、处理器及其计算机可读存储介质。

2、为了实现上述目的,本发明的分布式架构下实现跨应用及系统共享业务数据的系统、方法、装置、处理器及其计算机可读存储介质如下:

3、该分布式架构下实现跨应用及系统共享业务数据的系统,其主要特点是,所述的系统包括:

4、业务数据上下文定义模块,用于定义多个不同的业务数据上下文,定义业务数据上下文存放的业务数据规格及业务数据上下文生效的作用域;

5、业务数据上下文初始化模块,与所述的业务数据上下文定义模块相连接,用于根据业务数据上下文定义,加载指定的业务数据并进行缓存;

6、业务数据上下文订阅模块,与所述的业务数据上下文初始化模块相连接,用于管理不同系统及应用对具体业务数据上下文的访问权限,保障跨应用、系统业务数据共享时的权限与安全;

7、业务数据上下文管理模块,与所述的业务数据上下文定义模块、业务数据上下文初始化模块和业务数据上下文订阅模块相连接,用于与各业务应用进行数据实时交互与权限判断,提供业务数据的查询、更新、删除及多版本管理的接口。

8、较佳地,所述的业务数据上下文定义模块定义业务数据上下文,具体包括以下步骤:

9、(1.1)定义业务数据上下文;

10、(1.2)定义业务数据上下文的作用域;

11、(1.3)定义业务数据上下文的初始化服务;

12、(1.4)定义业务数据上下文的受管数据的键及类型。

13、较佳地,所述的业务数据上下文初始化模块根据业务数据上下文定义模块定义的业务数据上下文,查找出所有的业务数据上下文定义;解析每个业务数据上下文定义的业务数据上下文的初始化服务,通过远程调用的方式执行该业务数据上下文的初始化服务,将共享的业务数据加载进业务数据上下文中。

14、较佳地,所述的业务数据上下文订阅模块为各应用或者系统创建业务数据上下文订阅规则,指定需要访问的业务数据上下文,为不同的角色指定可以访问的业务数据key,指定订阅规则的生效时间,并由业务数据上下文订阅模块加载所有订阅规则。

15、较佳地,所述的业务数据上下文订阅模块工作的具体包括以下步骤:

16、(3.1)创建业务数据上下文订阅规则;

17、(3.2)指定订阅应用;

18、(3.3)定义订阅规则中被访问的业务数据上下文;

19、(3.4)定义角色可访问的业务数据key;

20、(3.5)指定订阅的生效时间;

21、(3.6)对定义的订阅规则进行模块加载,并存放于内存中。

22、较佳地,所述的业务数据上下文管理模块在应用发起业务数据查询时,判断应用是否授权访问以及对应的角色是否有获取指定key的访问权限,并执行对应的查询、更新、删除操作。

23、较佳地,所述的业务数据上下文管理模块在应用发起业务数据查询时具体包括以下步骤:

24、(4.1)应用发起对需要共享的业务数据查询请求;

25、(4.2)业务数据上下文管理模块判断来查询的应用是否有订阅,如果有订阅,则允许请求访问,继续步骤(4.3);否则拒绝请求;

26、(4.3)业务数据上下文管理模块判断该角色是否有获取指定业务数据的读权限,如果有读权限,继续执行步骤(4.4);否则拒绝请求;

27、(4.4)业务数据上下文管理模块执行对应的查询请求操作,将获得共享业务数据发回给查询应用方,实现业务数据的共享。

28、该利用上述系统实现分布式架构下的跨应用及系统共享业务数据的方法,其主要特点是,所述的方法包括以下步骤:

29、(1)业务数据上下文定义模块定义多个不同的业务数据上下文;

30、(2)业务数据上下文初始化模块根据业务数据上下文定义,加载指定的业务数据,并进行缓存;

31、(3)业务数据上下文订阅模块,为各应用或者系统创建业务数据上下文订阅规则,管理不同系统及应用对具体业务数据上下文的访问权限;

32、(4)业务数据上下文管理模块,判断应用是否授权访问以及对应的角色是否有获取指定key的访问权限,并执行对应的查询、更新、删除操作。

33、较佳地,所述的步骤(1)具体包括以下步骤:

34、(1.1)定义业务数据上下文;

35、(1.2)定义业务数据上下文的作用域;

36、(1.3)定义业务数据上下文的初始化服务;

37、(1.4)定义业务数据上下文的受管数据的键及类型。

38、较佳地,所述的步骤(2)具体包括以下步骤:

39、业务数据上下文初始化模块根据业务数据上下文定义模块定义的业务数据上下文,查找出所有的业务数据上下文定义;

40、解析每个业务数据上下文定义的业务数据上下文的初始化服务,通过远程调用的方式执行该业务数据上下文的初始化服务,将共享的业务数据加载进业务数据上下文中。

41、较佳地,所述的步骤(3)具体包括以下步骤:

42、(3.1)创建业务数据上下文订阅规则;

43、(3.2)指定订阅应用;

44、(3.3)定义订阅规则中被访问的业务数据上下文;

45、(3.4)定义角色可访问的业务数据key;

46、(3.5)指定订阅的生效时间;

47、(3.6)对定义的订阅规则进行模块加载,并存放于内存中。

48、较佳地,所述的步骤(4)具体包括以下步骤:

49、(4.1)应用发起对需要共享的业务数据查询请求;

50、(4.2)业务数据上下文管理模块判断来查询的应用是否有订阅,如果有订阅,则允许请求访问,继续步骤(4.3);否则拒绝请求;

51、(4.3)业务数据上下文管理模块判断该角色是否有获取指定业务数据的读权限,如果有读权限,继续执行步骤(4.4);否则拒绝请求;

52、(4.4)业务数据上下文管理模块执行对应的查询请求操作,将获得共享业务数据发回给查询应用方,实现业务数据的共享。

53、该用于实现分布式架构下的跨应用及系统共享业务数据的装置,其主要特点是,所述的装置包括:

54、处理器,被配置成执行计算机可执行指令;

55、存储器,存储一个或多个计算机可执行指令,所述的计算机可执行指令被所述的处理器执行时,实现上述的实现分布式架构下的跨应用及系统共享业务数据的方法的各个步骤。

56、该用于实现分布式架构下的跨应用及系统共享业务数据的处理器,其主要特点是,所述的处理器被配置成执行计算机可执行指令,所述的计算机可执行指令被所述的处理器执行时,实现上述的实现分布式架构下的跨应用及系统共享业务数据的方法的各个步骤。

57、该计算机可读存储介质,其主要特点是,其上存储有计算机程序,所述的计算机程序可被处理器执行以实现上述的实现分布式架构下的跨应用及系统共享业务数据的方法的各个步骤。

58、采用了本发明的分布式架构下实现跨应用及系统共享业务数据的系统、方法、装置、处理器及其计算机可读存储介质,由于提供了业务数据上下文定义、业务数据自动加载、业务数据访问订阅、业务数据权限管理等能力,从而实现了一种通用的跨应用、系统共享业务数据能力;同时通过提供细粒度业务数据的权限与动态更新机制,实现业务数据共享安全管理、避免应用或系统的重启,提升系统运行的可靠性;另外该实现提供支持多语言的rest api接口,支持多种异构系统的交互共享,减少了业务系统之间的强耦合性,极大的增加了分布式系统的健壮性,具备较强的推广价值。通过实现一种自动化、无侵入方式的跨应用、系统的业务数据共享机制,减少了业务系统之间的强耦合性,增加了分布式系统的健壮性,在分布式架构领域具有广泛的使用范围。

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