动态数据源管理方法及系统、客户端、设备和存储介质与流程

文档序号:29744114发布日期:2022-04-21 20:50阅读:231来源:国知局
动态数据源管理方法及系统、客户端、设备和存储介质与流程

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.租户管理模块:用于创建租户,管理租户权限,将租户与相关数据源绑定,并将客户端指定在租户中;
42.宕机保护模块:当数据源发生宕机或数据源发生网络故障时,向所有客户端应用广播发布宕机调控指令,客户端应用基于宕机调控指令切断或重建与对应的数据源建立的动态连接通道;
43.动态调控模块:向客户端应用广播发布动态调控指令,客户端应用基于动态调控指令动态调整与对应的数据源建立的动态连接通道或动态连接数,动态调整操作包括新增、修改或删除;
44.加密模块:对数据源配置及调控指令进行加密,客户端应用接收加密的数据源配置及调控指令,解密后进行相应操作。
45.本发明实施例中,上述请求服务模块包括:
46.心跳监控模块:用于接收客户端应用发送的心跳数据,管理监控模块实时读取心跳数据进行客户端及客户端与数据源的连接状态监控。
47.本发明实施例中,上述发布模块还包括:
48.广播模块:用于将调控指令广播发布给订阅了调控指令客户端应用。
49.本发明实施例中,上述存储模块还包括:
50.用于存储加密后的数据源配置,存储心跳数据,存储客户端应用与数据源的绑定关系,存储加密密钥及租户权限信息。
51.第三方面,本技术实施例提供了一种客户端,采用如上所述动态数据源管理方法,
包括上述多个客户端应用。
52.第四方面,本技术实施例提供了一种服务器设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如上所述动态数据源管理方法。
53.第五方面,本技术实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述第一方面动态数据源管理方法。
54.相比于相关现有技术,具有以下突出的有益效果:
55.1、本发明摈弃原有在客户端应用直接进行静态数据源配置的管理方式,将数据源配置管理权交由动态数据源管理器,使客户端应用和数据源实现松耦合,实现了数据源的集中管理;
56.2、本发明采用心跳机制:监控客户端应用的运行状态及数据源连接状态,在应用运行状态异常时可自动采取应急措施并告警;
57.3、本发明具有高安全性:对数据源配置中的敏感信息加以脱敏,提高了系统的安全性;
58.4、本发明具有高通用性:采用租户的方式进行数据源的权限管理,提高动态数据源管理器的通用性,防止数据源的滥用;
59.5、本发明具有高可靠性:本发明在进行数据源动态调控时,可以调控每个应用的数据源连接数目,以达到在不同环境下均具有最均衡的性能;可在应用运行中新增、修改或者删除数据源;也可用于数据源宕机时,暂时的屏蔽对应数据源以应急;
60.6、本发明具有松散耦合架构:本发明管理架构上将原有的c/s管理模式,改为依托于第三方的管理模式,开发人员在开发客户端应用时可以专注于业务,不会受制于繁琐的数据源维护工作。
附图说明
61.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
62.图1是本发明动态数据源管理方法的流程图;
63.图2为本发明实施例动态数据源管理系统架构示意图;
64.图3是本发明动态数据源管理系统示意图;
65.图4为根据本技术实施例的服务器设备的硬件结构示意图。
66.以上图中:
67.100动态数据源管理系统
68.10动态数据源管理模块20客户端应用模块
69.30数据源模块
70.81、处理器;82、存储器;83、通信接口;80、总线。
具体实施方式
71.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本技术,并不用
于限定本技术。基于本技术提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
72.显而易见地,下面描述中的附图仅仅是本技术的一些示例或实施例,对于本领域的普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图将本技术应用于其他类似情景。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本技术公开的内容相关的本领域的普通技术人员而言,在本技术揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本技术公开的内容不充分。
73.本技术的一个或多个实施例的细节在以下附图和描述中提出,以使本技术的其他特征、目的和优点更加简明易懂。
74.在本技术中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本技术所描述的实施例在不冲突的情况下,可以与其它实施例相结合。
75.除非另作定义,本技术所涉及的技术术语或者科学术语应当为本技术所属技术领域内具有一般技能的人士所理解的通常意义。本技术所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本技术所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本技术所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本技术所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本技术所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
76.本发明旨在提供动态数据源连接管理技术,更加方便的完成多种数据源的适配功能,管理应用服务与数据源之间动态交互连接。
77.本发明提出的动态数据源连接管理技术摈弃了原有在客户端应用进行数据源配置的管理方式,将数据源配置管理权交由动态数据源管理器,使客户端应用和数据源实现松耦合。将原有的c/s管理模式,改为了依托于第三方的管理模式。
78.当一个客户端应用使用到多个数据源时,仅仅需要在动态数据源管理器中预先注册好对应的数据源信息,同时为客户端应用绑定好使用的数据源。在客户端应用启动时,请求动态数据源管理器获取该应用绑定的数据源配置信息,并在应用端直接创建与其绑定的数据源的连接通道。
79.图1为本发明方法流程示意图,如图1所示,本技术实施例提供了一种动态数据源管理方法,包括:
80.动态数据源管理步骤s10:统一对不同种类的多个数据源及多个客户端应用进行
注册、管理与监控,统一管理数据源配置,接收并处理客户端应用对数据源配置的请求,向客户端应用下发数据源配置;
81.客户端应用启动步骤s20:客户端应用发出数据源配置请求,获取数据源配置处理后,向对应的数据源发出通道连接请求;
82.数据源动态连接步骤s30:数据源接收客户端应用的通道连接请求后,与对应的客户端应用建立动态连接通道,实现客户端应用与数据源的动态连接。
83.其中,上述动态数据源管理步骤s10包括:
84.管理监控步骤:统一管理客户端应用及数据源配置,监控客户端应用及数据源的连接状态,并发布调控指令;
85.请求服务步骤:提供通信接口服务,接收并传递调控指令,接收客户端应用的数据源配置获取请求并下发数据源配置;
86.发布步骤:接收调控指令,并广播发布给订阅了调控指令的客户端应用;
87.存储模块:提供数据存储服务,存储数据源配置。
88.其中,上述管理监控步骤还包括:
89.初始化步骤:进行客户端应用及数据源注册,并将客户端应用与数据源进行关联,并指定动态连接通道中的动态连接数;
90.配置管理步骤:管理数据源配置的存储;
91.租户管理步骤:创建租户,管理租户权限,将租户与相关数据源绑定,并将客户端指定在租户中;
92.宕机保护步骤:当数据源发生宕机或数据源发生网络故障时,向客户端应用广播发布宕机调控指令,客户端应用基于宕机调控指令切断或重建与对应的数据源建立的动态连接通道;
93.动态调控步骤:向客户端应用广播发布动态调控指令,客户端应用基于动态调控指令动态调整与对应的数据源建立的动态连接通道或动态连接数,动态调整操作包括新增、修改或删除;
94.加密步骤:对数据源配置及调控指令进行加密,客户端应用接收加密的数据源配置及调控指令,解密后进行相应操作。
95.其中,上述请求服务步骤包括:
96.心跳监控步骤:接收客户端应用发送的心跳数据,实时读取心跳数据进行客户端及客户端与数据源的连接状态监控。
97.其中,上述发布步骤还包括:
98.广播步骤:用于将调控指令广播发布给订阅了调控指令的客户端应用。
99.本发明实施例中,上述存储步骤还包括:
100.存储加密后的数据源配置,存储心跳数据,存储客户端应用与数据源的绑定关系,存储加密密钥及租户权限信息。
101.以下结合附图对本发明具体实施例进行详细说明:
102.1、功能架构设计方案
103.如图2所示,整体架构主要分为客户端、数据源和动态数据源管理器三部分。
104.客户端是指所有的客户端应用,其请求动态数据源管理器获取配置,定时向动态
数据源管理器发送心跳,与数据源创建连接通道并按照数据源配置在通道中维护指定数目的连接,订阅动态数据源管理器发布的指令,服从动态数据源管理器的管理和调度。
105.数据源是指真实的数据存储组件,包括关系型数据库、非关系型数据库、缓存存储、大数据存储以及对象存储等。
106.动态数据源管理器主要负责配置存储、请求调度、管理监控及发布指令。动态数据源管理器包括管理监控器、请求服务器、发布器以及存储器四个组件,管理监控器和请求服务器共享存储器中的配置及数据存储卷。其中,请求服务器处理客户端应用的请求以及管理监控器的指令,负责客户端应用心跳记录、数据源配置下发、传递管理监控器指令,其与客户端应用的通信协议为https;管理监控器提供可视化的界面,可以直观的进行应用状态监控、数据源连接状态的监控、应用数据源配置的存储与维护、租户权限管理以及指令发布;发布器提供指令广播功能,将收到的指令广播给订阅了发布器的客户端应用;存储器提供数据存储功能,存储脱敏后的数据源配置信息、存储应用的心跳记录、存储应用与数据源的绑定关系、存储加密密钥、存储租户权限信息。
107.动态数据源管理器具有以下功能:
108.采取集中式、可视化的方法管理数据源信息,可以方便的通过页面进行客户端应用以及数据源配置信息的注册与维护,并将客户端应用和数据源配置信息进行绑定。
109.使用加密算法对数据源配置中的敏感信息进行脱敏,提高了安全性。
110.接收各个客户端应用的心跳,以便进行可视化的监控客户端应用运行状态和数据源连接状态,当某个应用运行状态发生异常时,动态数据源管理器会标记应用为停止运行状态,并在逻辑上回收数据源对应的连接数,监控页面会发出相关的报警信息。
111.可以通过部署环境个性化的调控各个客户端应用分配的数据源连接数。
112.引入租户的概念,赋予各租户不同的数据源权限,开发人员需要为客户端应用提前绑定租户,以决定客户端应用有权使用哪些数据源。
113.当某个应用运行中需要新增、修改或者删除数据源,或需要修改数据源连接通道中的连接数目,或用于灾备(即需要暂时屏蔽客户端应用集群中某个宕机的数据源)时,使用动态数据源管理器的发布订阅功能发送调控指令通知客户端应用即可实现。
114.以下对本发明具体实施例动态数据源连接方法具体实现进行阐述:
115.1、初始化
116.初始化操作指的是,项目开发之初,通过管理监控器界面进行租户、客户端应用、数据源以及加密配置等信息的设置,该步骤仅需操作一次,后续便可以自动化实现动态数据源连接的管理,具体的操作流程如下:
117.1)管理员通过界面将客户端应用以及数据源相关的配置信息注册进动态数据源管理器,以便其可以识别到对应客户端以及数据源。注册数据源时,需要为每个数据源设置连接数、加密方式以及密钥等信息。
118.2)通过界面创建租户,为租户绑定其有权用到的数据源,将客户端归并入指定租户中,单个租户下可以有多个应用客户端,单个应用客户端仅隶属于一个租户。也可以首先创建租户,在该租户界面下进行第一步的操作。
119.3)通过界面,将客户端应用与其使用到的数据源进行关联,并为每一个客户端应用个性化的设置数据源连接数。
120.2、客户端应用配置及启动流程
121.上述介绍了初始化的流程,初始化操作完成之后,开发人员便可以进行编码以及调试工作。编码之前,需要在客户端配置密钥,以便获取到动态数据源管理器下发的配置后,解密并进行数据源连接通道的创建。下面对启动流程加以详细阐述:
122.1)客户端应用启动时,首先需要订阅发布器以备接受其发布广播调控指令,同时访问请求服务器获取数据源配置,请求服务器查询存储器中此前通过管理监控器设置的数据源配置信息,并下发给客户端应用。
123.2)客户端应用收到请求服务器下发的配置后,进行通过密钥进行配置信息的解密,依照配置与对应的数据源创建连接通道,按配置在连接通道中维护指定数目的连接。
124.3)客户端应用启动完成后,会定时发送心跳给请求服务器,其主要的内容为应用状态以及所连接数据源的状态信息。请求服务器收到心跳请求后,将心跳数据维护进数据存储卷中,以备管理监控器监控及调度。当客户端应用端进行自身业务时,通过不同业务的参数标识进行不同数据源的匹配,而后通过匹配到的数据源连接通道访问指定的数据源,实现客户端应用与数据源的动态连接。
125.3、应用运行时的数据源调控
126.上述介绍了客户端应用启动的配置及启动流程,当应用启动完成之后,如果数据源配置有改动(数据源地址、口令、连接数等),或者遇到需要灾备的情况,就需要进行实时的数据源调控操作。
127.客户端应用在实际运行中,需要根据运行环境及时的调控数据源配置,例如:当通过管理监控器的告警发现,某个数据源的连接状态均为不可用时(即该数据源宕机或该数据源与应用集群之间产生网络故障),则使用该数据源的所有客户端应用都会受影响,此时,需要将该数据源进行暂时屏蔽。
128.管理监控器可以完成上述调控操作,其定义了常用的调控指令。调控数据源配置时,需要在管理监控器端发送调控指令给请求服务器,调控指令中主要包括加密的数据源信息以及具体的调控操作,请求服务器通过发布器将调控指令广播给所有客户端应用。客户端应用收到广播时,判断是否包含该数据源,如果包含则暂时断开与该数据源的所有连接;如果不包含该数据源,则不做任何操作。同理,在数据源修复后,可以再次调控发送指令使应用重新连接对应数据源。
129.此外,当某个客户端应用需要调控数据源通道中的连接数或者新增、修改、删除数据源时,同样通过上述广播的方式将调控指令发送给所有客户端应用。此时调控指令中不仅包括加密的数据源信息以及具体的调控操作,还新增了应用标识。应用收到调控指令后,首先判断应用标识,如果是自己,则才采取后续调控操作,否则不做任何操作。
130.4、数据源配置脱敏
131.在实际应用中,数据源配置中都会包含各个数据源的ip地址、端口、用户名和密码等敏感信息,服务端提供了常用的加密接口(aes、rsa等),可以对上述敏感信息进行脱敏处理。
132.具体实现方式是,在开发人员使用管理监控器为应用配置数据源连接时,可以选择一种加密方式(例如aes)将配置写入数据存储卷中,并设置好加密密钥。同时,开发人员也需要在客户端应用设置与动态数据源管理器一致的加密密钥。在客户端应用请求服务端
获取配置时,配置以加密的方式通过请求服务器下发给客户端应用,应用端收到已脱敏的配置后,进行解密并进行后续操作。
133.通过数据源配置脱敏处理,可以避免网络攻击和数据源恶意盗用,大大提高的系统安全性。
134.5、心跳监控机制
135.客户端应用在启动完成之后会定时向请求管理器发送心跳数据,数据中包括客户端应用各个数据源的连接状态、连接数等信息。通过心跳机制,管理监控器可视化的展示各个客户端应用的运行状态以及数据源的连接状态。
136.当请求管理器超出指定的时间未收到某个客户端应用的心跳时,则判定为客户端应用宕机,此时请求管理器会自动将该应用客户端标记为不可用,并在逻辑上回收分配给该应用各个数据源的连接数。同时,管理监控器也会在界面上发出告警,提醒开发人员查看客户端应用的运行状态。同理,管理监控器也会实时读取心跳记录,监控数据源的连接状态。当集群中所有的客户端应用心跳中,某个数据源连接状态均为不可用时,则会在界面上发出数据源宕机告警。
137.6、租户权限机制
138.为了提高动态数据源管理器的通用性,采取租户权限管理的机制。当使用该动态数据源管理技术的组织很庞大时,可以根据部门或者项目组进行租户的分配,每个租户只能使用到赋予该租户权限的资源。各个租户均可以监控隶属于该租户的应用客户端以及数据源的状态,可以调控隶属于该租户的数据源连接、下发隶属于该租户的数据源配置信息。
139.7、发布订阅机制
140.为了实现动态调控,采用发布订阅机制。其具体原理是,订阅到发布器的客户端应用,都会被动的收到发布器发布的消息,这个消息在多个客户端应用订阅时采取广播的模式。客户端应用启动时,需要先进行发布器的订阅,后续进行数据源调控时,才能收到广播消息以进行操作。
141.第二方面,如图3所示,本技术实施例还提供了一种动态数据源管理系统100,采用如上所述动态数据源管理方法,包括:
142.动态数据源管理模块10:统一对不同种类的多个数据源及多个客户端应用进行注册、管理与监控,统一管理数据源配置,接收并处理客户端应用对数据源配置的请求,向客户端应用下发数据源配置;
143.多个客户端应用20:通信连接动态数据源管理模块,客户端应用向动态数据源管理模块发出数据源配置请求,获取数据源配置处理后,向对应的数据源发出通道连接请求;
144.多种数据源30:通信连接动态数据源管理模块,数据源接收客户端应用的通道连接请求后,与对应的客户端应用建立连接通道,实现数据源动态连接。
145.本发明实施例中,上述动态数据源管理模块10包括:
146.管理监控模块:用于统一管理客户端应用及数据源配置,监控客户端应用及数据源的连接状态,并发布调控指令;
147.请求服务模块:连接管理监控模块,用于与客户端应用及管理监控模块进行通信,接收并传递调控指令,接收客户端应用的数据源配置获取请求并下发数据源配置;
148.发布模块:连接请求服务模块,发布模块接收调控指令并广播发布给订阅了调控
bus,简称为usb)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器82可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器82可在数据处理装置的内部或外部。在特定实施例中,存储器82是非易失性(non-volatie)存储器。在特定实施例中,存储器82包括只读存储器(read-only memory,简称为rom)和随机存取存储器(random access memory,简称为ram)。在合适的情况下,该rom可以是掩模编程的rom、可编程rom(programmable read-only memory,简称为prom)、可擦除prom(erasable programmable read-only memory,简称为eprom)、电可擦除prom(electrically erasable programmable read-only memory,简称为eeprom)、电可改写rom(electrically alterable read-only memory,简称为earom)或闪存(flash)或者两个或更多个以上这些的组合。在合适的情况下,该ram可以是静态随机存取存储器(static random-access memory,简称为sram)或动态随机存取存储器(dynamic random access memory,简称为dram),其中,dram可以是快速页模式动态随机存取存储器(fast page mode dynamic random access memory,简称为fpmdram)、扩展数据输出动态随机存取存储器(extended date out dynamic random access memory,简称为edodram)、同步动态随机存取内存(synchronous dynamic random-access memory,简称sdram)等。
169.存储器82可以用来存储或者缓存需要处理和/或通信使用的各种数据文件,以及处理器81所执行的可能的计算机程序指令。
170.处理器81通过读取并执行存储器82中存储的计算机程序指令,以实现上述实施例中的任意一种动态数据源管理方法。
171.在其中一些实施例中,计算机设备还可包括通信接口83和总线80。其中,如图4所示,处理器81、存储器82、通信接口83通过总线80连接并完成相互间的通信。
172.通信接口83用于实现本技术实施例中各模块、装置、单元和/或设备之间的通信。通信端口83还可以实现与其他部件例如:外接设备、图像/数据采集设备、数据库、外部存储以及图像/数据处理工作站等之间进行数据通信。
173.总线80包括硬件、软件或两者,将计算机设备的部件彼此耦接在一起。总线80包括但不限于以下至少之一:数据总线(data bus)、地址总线(address bus)、控制总线(control bus)、扩展总线(expansion bus)、局部总线(local bus)。举例来说而非限制,总线80可包括图形加速接口(accelerated graphics port,简称为agp)或其他图形总线、增强工业标准架构(extended industry standard architecture,简称为eisa)总线、前端总线(front side bus,简称为fsb)、超传输(hyper transport,简称为ht)互连、工业标准架构(industry standard architecture,简称为isa)总线、无线带宽(infiniband)互连、低引脚数(low pin count,简称为lpc)总线、存储器总线、微信道架构(micro channel architecture,简称为mca)总线、外围组件互连(peripheral component interconnect,简称为pci)总线、pci-express(pci-x)总线、串行高级技术附件(serial advanced technology attachment,简称为sata)总线、视频电子标准协会局部(video electronics standards association local bus,简称为vlb)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线80可包括一个或多个总线。尽管本技术实施例描述和示出了特定的总线,但本技术考虑任何合适的总线或互连。
174.该计算机设备可以基于动态连接方法,从而实现结合图1描述的动态数据源管理
方法。
175.第五方面,本技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述第一方面动态数据源管理方法。
176.相比于现有技术,本发明主要实现了:摈弃原有在客户端应用进行数据源配置的管理方式,将数据源配置管理权交由动态数据源管理器,使客户端应用和数据源实现松耦合,实现了数据源的集中管理。采用心跳机制,监控客户端应用的运行状态及数据源连接状态,在应用运行状态异常时可自动采取应急措施并告警。对数据源配置中的敏感信息加以脱敏,提高了系统的安全性。采用租户的方式进行数据源的权限管理,提高动态数据源管理器的通用性,防止数据源的滥用。在进行数据源动态调控时,可以调控每个应用的数据源连接数目,以达到在不同环境下均具有最均衡的性能;可在应用运行中新增、修改或者删除数据源;也可用于数据源宕机时,暂时的屏蔽对应数据源以应急。管理架构上将原有的c/s管理模式,改为依托于第三方的管理模式,开发人员在开发客户端应用时可以专注于业务,不会受制于繁琐的数据源维护工作。
177.以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
178.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1