一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据源连接池控制方法、装置及服务器与流程

2022-12-02 23:59:54 来源:中国专利 TAG:


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.进一步地,所述数据源配置信息包括针对数据库的连接地址、针对数据库的最大连接数、针对数据库的初始连接数、以及用户信息。
56.第三方面,本技术提供一种服务器,包括存储器、处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现第一方面所述的方法。
57.第四方面,本技术提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现第一方面所述的方法。
58.第五方面,本技术提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面所述的方法。
59.本技术提供的一种数据源连接池控制方法、装置及服务器,通过运行应用的服务器中部署的中间件,获取服务器的数据源配置信息;其中,数据源配置信息表征服务器的数据源连接池的配置信息,配置信息包括服务器的数据库连接策略。响应于针对数据库连接策略的编辑操作,确定服务器的数据库连接策略为中间件连接策略;其中,中间件连接策略用于根据服务器接收数据库的数据的接收时间释放服务器与数据库之间的连接。响应于查询指令,其中,查询指令用于指示向多个目标数据库查询目标数据,接收多个目标数据库中每一目标数据库发送的目标数据。基于中间件连接策略,若确定已获取多个目标数据库中任一目标数据库发送的目标数据,则按照任一目标数据的获取时间,对任一目标数据库与服务器之间的连接进行释放处理。本方案中,通过运行应用的服务器中部署的中间件,获取服务器的数据源配置信息,确定服务器的数据库连接策略为中间件连接策略,然后,根据接收到的查询指令,向多个目标数据库发送查询指令,当目标数据库查找到与查询指令对应的目标数据并向服务器发送时,服务器接收多个目标数据库中每一目标数据库发送的目标数据。基于中间件连接策略,如果确定已获取多个目标数据库中任一目标数据库中的目标数据,则按照任一目标数据的获取时间,立即对任一目标数据库与服务器之间的连接进行释放处理,即根据获取目标数据的时间进行释放处理,无需等到获取所有目标数据库的目标信息后再进行释放处理。所以,可以通过中间件协助服务器管理数据源连接需求,在应用部署时,使用中间件方式托管服务器的数据源配置信息,通过接口调用的方法使用,与服务器中的程序架构解耦。同时,通过本技术,可以优化数据源连接池的资源管理,通过动态分析,能够动态的释放连接池资源,提高数据连接的效率,减少了占用资源,解决了数据库连接的资源调用能力较差的技术问题。
附图说明
60.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
61.图1为本技术实施例提供的一种数据源连接池控制方法的流程示意图;
62.图2为本技术实施例提供的另一种数据源连接池控制方法的流程示意图;
63.图3为本技术实施例提供的又一种数据源连接池控制装置的结构示意图;
64.图4为本技术实施例提供的再一种数据源连接池控制方法的流程示意图;
65.图5为本技术实施例提供的其他一种数据源连接池控制方法的场景示意图;
66.图6为本技术实施例提供的又一种数据源连接池控制方法的流程示意图;
67.图7为本技术实施例提供的又一种数据源连接池控制方法的流程示意图;
68.图8为本技术实施例提供的一种数据源连接池控制装置的结构示意图;
69.图9为本技术实施例提供的另一种数据源连接池控制装置的结构示意图;
70.图10为本技术实施例提供的一种中间件的结构示意图。
71.通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。
具体实施方式
72.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。
73.一个示例中,随着商业银行的转型,对于大数据的使用场景愈加丰富,特别是对于历史数据的查询、分析和利用的应用场景。现有技术中,在存储历史数据时,按照数据时间范围,划分多个历史的数据库并存储历史数据,每一历史的数据库均分别部署于单独的服务器中。查询历史数据时,运行应用的服务器连接所有的历史的数据库,待遍历所有数据库查询出结果数据后,释放服务器与历史的数据库之间的连接,并将查询的结果数据加载在服务器的前端,提供给数据使用方使用。然而现有技术中,由于需要待遍历所有数据库查询出结果数据后,释放服务器与历史的数据库之间的连接,若是查询任一历史的数据库的速度较快,还需要等待所有历史的数据库查询完毕之后才能释放所有的连接,导致查询操作占用的资源较多,进而导致数据库连接的资源调用能力较差。
74.本技术提供的一种数据源连接池控制方法、装置及服务器,旨在解决现有技术的如上技术问题。
75.下面以具体地实施例对本技术的技术方案以及本技术的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本技术的实施例进行描述。
76.图1为本技术实施例提供的一种数据源连接池控制方法的流程示意图,应用于中间件,中间件为可安装的软件;如图1所示,该方法包括:
77.101、通过运行应用的服务器中部署的中间件,获取服务器的数据源配置信息;其中,数据源配置信息表征服务器的数据源连接池的配置信息,配置信息包括服务器的数据库连接策略。
78.示例性地,本实施例的执行主体为部署中间件(middleware)的服务器。中间件为可安装可卸载的软件,属于可复用软件范畴,是位于平台和应用之间的通用服务,这些服务具有标准的程序接口和协议,针对不同的操作系统和硬件平台,可以有符合接口和协议规范的多种实现。在生产部署时,作为中间件独立于运行应用的服务器,即插即拔,可扩展性较高,应用场景使用较灵活,耦合性强,对于运行应用的服务器的架构变化影响小,通过这种方式实现了应用程序管理与数据源连接池管理的解耦。如下图2所示,图2为本技术实施
例提供的另一种数据源连接池控制方法的流程示意图。通过运行应用的服务器中部署的中间件,自动读取该服务器内部的数据源配置信息,即中间件自动托管该服务器的所有数据连接程序的数据源连接池需求,可以管理获取连接、释放连接、关闭连接池,具体的按照应用程序的物理地址,对应映射数据源连接池,并设置默认配置,这些默认配置继承原应用内部自身的数据库连接配置。同时,提供数据库连接池管理失效时的自动断开策略,对于已经加载的无效数据库连接,可以选择继承原应用内部自身的断开连接策略,亦可以选择中间件提供的自动断开策略。其中,数据源配置信息表示运行应用的服务器的数据源连接池的配置信息,数据源连接池(datasource connection pool),用于将数据库连接的配置信息作为对象存储在服务器的内存中,由连接池负责分配、管理和释放数据库连接,数据源配置信息用于确定服务器连接的数据库并从数据库获取数据。数据源配置信息包括驱动、用于确定数据库的连接地址用户信息、数据库的最大连接数、数据库的初始连接数等,以及提供获取连接、释放连接、关闭数据源连接池等,其中,用户信息包括用户名、密码。
79.举例来说,首先根据不同类型的数据库连接池,创建多个数据源配置父类。运行应用的服务器部署中间件后,通过中间件自动读取服务器内部的数据源配置信息,依据各服务器的实际的数据源配置信息,对应中间件中具体类型的数据库源配置的实现类,形成数据库连接信息,数据库连接信息即为数据源配置信息。还可以实现管理多个数据源配置实现类的管理类,可以根据数据库返回的连接日志,动态加载新的数据库信息,删除已经加载的无效数据库信息。
80.102、响应于针对数据库连接策略的编辑操作,确定服务器的数据库连接策略为中间件连接策略;其中,中间件连接策略用于根据服务器接收数据库的数据的接收时间释放服务器与数据库之间的连接。服务器
81.示例性地,服务器的数据源配置信息包括初始策略,中间件包含中间件连接策略。其中,初始策略是指根据接收到的查询指令向服务器连接的多个目标数据库均获取目标数据后,释放每一目标数据库与服务器之间的连接,即必须获取所有目标数据库的目标数据后,统一释放所有目标数据库中每一目标数据库与服务器的连接。中间件连接策略是指根据接收到的查询指令向服务器连接的多个目标数据库中任意一个目标数据库获取目标数据后,释放任意一个目标数据库与服务器之间的连接,即先获取目标数据时先释放连接,后获取目标数据时后释放连接。
82.所以,通过中间件读取服务器的数据源配置信息后,可以响应于用户针对数据库连接策略的选择操作,将数据库连接策略的初始策略更新为中间件连接策略。或者,直接继承服务器内部的初始策略作为服务器的数据库连接策略。在本方案中,优选的方案是确定中间件连接策略作为服务器的数据库连接策略。
83.103、响应于查询指令,其中,查询指令用于指示向多个目标数据库查询目标数据,接收多个目标数据库中每一目标数据库发送的目标数据。
84.示例性地,当接收到用户输入的查询指令,可以根据查询指令确定出对应的目标数据库,向目标数据库发送该查询指令,当目标数据库根据查询指令确定目标数据并向服务器发送时,服务器接收多个目标数据库中每一目标数据库发送的目标数据。
85.104、基于中间件连接策略,若确定已获取多个目标数据库中任一目标数据库发送的目标数据,则按照任一目标数据的获取时间,对任一目标数据库与服务器之间的连接进
行释放处理。
86.示例性地,由于服务器的连接策略为中间件连接策略,中间件如果确定已获取多个目标数据库中任一目标数据库中的目标数据,则按照任一目标数据的获取时间,对任一目标数据库与服务器之间的连接进行释放处理。或者,如果服务器的连接策略为初始连接策略,则需要在确定已获取多个目标数据库中每一数据库的目标数据的情况下,分别对多个目标数据库中每一目标数据库与服务器之间的连接进行释放。
87.本技术实施例中,通过运行应用的服务器中部署的中间件,获取服务器的数据源配置信息;其中,数据源配置信息表征服务器的数据源连接池的配置信息,配置信息包括服务器的数据库连接策略。响应于针对数据库连接策略的编辑操作,确定服务器的数据库连接策略为中间件连接策略;其中,中间件连接策略用于根据服务器接收数据库的数据的接收时间释放服务器与数据库之间的连接。响应于查询指令,其中,查询指令用于指示向多个目标数据库查询目标数据,接收多个目标数据库中每一目标数据库发送的目标数据。基于中间件连接策略,若确定已获取多个目标数据库中任一目标数据库发送的目标数据,则按照任一目标数据的获取时间,对任一目标数据库与服务器之间的连接进行释放处理。本方案中,通过运行应用的服务器中部署的中间件,获取服务器的数据源配置信息,确定服务器的数据库连接策略为中间件连接策略,然后,根据接收到的查询指令,向多个目标数据库发送查询指令,当目标数据库查找到与查询指令对应的目标数据并向服务器发送时,服务器接收多个目标数据库中每一目标数据库发送的目标数据。基于中间件连接策略,如果确定已获取多个目标数据库中任一目标数据库中的目标数据,则按照任一目标数据的获取时间,立即对任一目标数据库与服务器之间的连接进行释放处理,即根据获取目标数据的时间进行释放处理,无需等到获取所有目标数据库的目标信息后再进行释放处理。所以,可以通过中间件协助服务器管理数据源连接需求,在应用部署时,使用中间件方式托管服务器的数据源配置信息,通过接口调用的方法使用,与服务器中的程序架构解耦。同时,通过本技术,可以优化数据源连接池的资源管理,通过动态分析,能够动态的释放连接池资源,提高数据连接的效率,减少了占用资源,解决了数据库连接的资源调用能力较差的技术问题。
88.图3为本技术实施例提供的又一种数据源连接池控制方法的流程示意图,应用于中间件,中间件为可安装的软件;如图3所示,该方法包括:
89.201、通过运行应用的服务器中部署的中间件,获取服务器的数据源配置信息;其中,数据源配置信息表征服务器的数据源连接池的配置信息,配置信息包括服务器的数据库连接策略。
90.一个示例中,数据源配置信息包括针对数据库的连接地址、针对数据库的最大连接数、针对数据库的初始连接数、以及用户信息。
91.示例性地,本步骤可以参见图1中的步骤101,不再赘述。
92.202、响应于针对数据库连接策略的编辑操作,将数据库连接策略的初始策略更新为中间件连接策略;其中,中间件连接策略用于根据服务器接收数据库的数据的接收时间释放服务器与数据库之间的连接。
93.示例性地,本步骤可以参见图1中的步骤102,不再赘述。
94.203、响应于查询指令,其中,查询指令包括查询条件信息,根据数据源配置信息确定查询条件信息对应的目标数据库,并向目标数据库发送查询条件信息;其中,查询条件信
息用于查询并获取目标数据。
95.一个示例中,步骤203包括:响应于查询指令,其中,查询指令包括查询条件信息,确定查询条件信息对应的业务模块;其中,业务模块为预先设置的与业务类型对应的模块,每一业务模块对应有不同的数据源配置信息;确定业务模块的数据源配置信息;根据业务模块的数据源配置信息,确定查询条件信息对应的目标数据库;其中,查询条件信息用于查询并获取目标数据。
96.一个示例中,方法还包括:若确定业务模块为预设的监听模块,其中,监听模块用于指示服务器包含用于监听的代码信息,则生成用于访问目标数据库的数据源连接配置策略;其中,数据源连接配置策略包括目标数据库的访问步骤信息,访问步骤信息包括查询条件信息对应的查询步骤、以及代码信息对应的监听步骤。
97.示例性地,接收到用户输入的查询指令,其中,查询指令包括查询条件信息,在数据源配置信息中确定查询条件信息对应的目标数据库,并向目标数据库发送查询条件信息,查询条件信息用于查询并获取目标数据。
98.举例来说,通过中间件读取服务器的数据源配置信息后,可以响应于用户的编辑操作,得到编辑后的与业务模块对应的数据源配置信息,具体的,可以按照服务器的业务模块进行编辑,得到与业务类型对应的业务模块,其中,业务模块包括:工资查询和订餐等,按照业务模块配置对应的数据库,得到并维护每一业务模块的数据源连接池的配置信息,例如:服务器区分业务模块,每个业务模块对于多个数据库连接池的配置要求不经相同,这种情况下,就可以在整个应用层面的数据库连接配置类和数据库连接管理类基础上,继续细分业务模块的具体数据库连接配置类和数据库连接管理类。通过这种方法,可以使服务器的业务模块能根据数据源连接池连接要求不同配置不同的数据库连接策略,细化了对于数据连接管理的能力,同时对于数据库连接,专事专办,在中间件中进行管理,做到了连接池管理与应用程序的解耦。
99.进一步的,对于特定需求的程序代码,其中,特定需求为监听需求,监听需求对应的监听模块需要监听数据源连接池的返回日志,监听模块的特点通常是时间要求快,且遍历目标数据库的逻辑繁琐,服务器可以通过中间件按不同查询条件路由至不同数据源,提供数据源连接配置策略,数据源连接配置策略包括数据库的访问步骤信息,访问步骤信息包括查询条件信息对应的查询步骤、以及代码信息对应的监听步骤。所以,服务器能够根据数据源连接配置策略中的访问步骤和监听步骤按顺序遍历目标数据库,进而可以更加个性化的提供应用对于连接池的特殊要求,为产品需求赋能、助力。举例来说,数据源连接配置策略的访问步骤信息包括:第一步是遍历目标数据库1和目标数据库2,第二步是遍历目标数据源数据3且监听到目标数据源数据3返回的连接日志,才能进行下一步,第四步是遍历目标数据源数据4。
100.图4为本技术实施例提供的再一种数据源连接池控制方法的流程示意图,如图4所示,按照不同配置策略配置细化的数据库连接策略。具体应用可以按照业务模块,对应到不同的程序代码,程序代码在中间件中按照物理目录纬度记录配置,从而应用可以根据配置表维护不同数据源连接池;同理,应用也可以按照特定程序代码,单独配置数据库连接策略,对于数据源连接池管理要求高的场景提供了优化连接池管理的途径。
101.在该步骤中,响应于用户输入的查询指令,其中,查询指令包括查询条件信息,根
据数据源配置信息确定查询条件信息对应的目标数据库。若是数据源配置信息中已配置了业务模块,则确定查询条件信息对应的业务模块,并根据查询条件信息对应的业务模块,确定目标数据库。
102.204、接收目标数据库发送的目标数据。
103.示例性地,当服务器根据查询指令确定出目标数据库时,会遍历所有的目标数据库,得到每一目标数据库反馈的目标数据,所以,可以接收每一目标数据库发送的目标数据。
104.205、接收目标数据库发送的连接日志;其中,连接日志包括目标数据的获取时间。
105.示例性地,数据库向服务器发送目标数据时,还会向服务器器发送连接日志,连接日志包括目标数据的获取时间、完成状态等信息,所以,中间件可以接收每一目标数据库发送的连接日志。
106.206、若确定已获取多个目标数据库中任一目标数据库中的目标数据,根据任一目标数据库发送的连接日志,确定任一目标数据的获取时间。
107.示例性地,示例性地,如果确定已获取多个目标数据库中任一目标数据库中的目标数据,则可以根据任一目标数据库发送的连接日志,确定任一目标数据的获取时间。
108.207、基于中间件连接策略以及任一目标数据的获取时间,对任一目标数据对应的目标数据库与服务器之间的连接进行释放处理。
109.示例性地,基于中间件连接策略以及任一目标数据的获取时间,对任一目标数据对应的目标数据库与服务器之间的连接进行释放处理,即获取任意一个目标数据库发送的目标数据后,立即断开任意一个目标数据库与服务器之间的连接。
110.208、若确定获取的配置信息中的数据源发生变更,则响应于选择操作,得到与选择操作对应的数据源配置信息;其中,选择操作包括下述任意一项或多项:新增数据源、删除数据源、修改数据源、查询数据源。
111.示例性地,当确定数据源侧发生变更,比如数据源的分库策略变化、分表策略变化时,重新读取服务器的配置信息,更新中间件中的数据连接程序的数据库连接池的信息,如图5所示,图5为本技术实施例提供的其他一种数据源连接池控制方法的场景示意图,通过中间件解析连接需求的业务模块,对于数据源侧变更的情况,应用侧无需关心数据源侧变化,对于新增数据源的情况,在重新解析代码后,在数据库侧中新增一条配置就能实现需求的变动。这样处理,对于应用侧的代码维护减少,而是对数据源侧作配置调整,面向数据源做维护,减少了应用侧代码的耦合配置。
112.本技术实施例中,通过运行应用的服务器中部署的中间件,获取服务器的数据源配置信息;其中,数据源配置信息表征服务器的数据源连接池的配置信息,配置信息包括服务器的数据库连接策略。响应于针对数据库连接策略的编辑操作,将数据库连接策略的初始策略更新为中间件连接策略;其中,中间件连接策略用于根据服务器接收数据库的数据的接收时间释放服务器与数据库之间的连接。响应于查询指令,其中,查询指令包括查询条件信息,根据数据源配置信息确定查询条件信息对应的目标数据库,并向目标数据库发送查询条件信息;其中,查询条件信息用于查询并获取目标数据。接收目标数据库发送的目标数据。接收目标数据库发送的连接日志;其中,连接日志包括目标数据的获取时间。若确定已获取多个目标数据库中任一目标数据库中的目标数据,根据任一目标数据库发送的连接
日志,确定任一目标数据的获取时间。基于中间件连接策略以及任一目标数据的获取时间,对任一目标数据对应的目标数据库与服务器之间的连接进行释放处理。若确定获取的配置信息中的数据源发生变更,则响应于选择操作,得到与选择操作对应的数据源配置信息;其中,选择操作包括下述任意一项或多项:新增数据源、删除数据源、修改数据源、查询数据源。所以,可以通过中间件协助服务器管理数据源连接需求,在应用部署时,使用中间件方式托管服务器的数据源配置信息,通过接口调用的方法使用,与服务器中的程序架构解耦。同时,通过本技术,可以优化数据源连接池的资源管理,通过动态分析,能够动态的释放连接池资源,提高数据连接的效率,减少了占用资源,解决了数据库连接的资源调用能力较差的技术问题。并且,服务器还可以针对各个数据源连接池在具体业务模块时的不同要求,细分数据库连接策略,真正做到精细化管理数据源连接池,高度贴合业务场景。针对底层数据库连接池封装的基础上,根据数据源实际连接情况提供了统一的数据源连接管理能力,同时对于应用的特殊场景,对于程序线程对应特定的数据源连接需求提供了可配置的能力,实现平台赋能、效率提升、助力产品的作用。
113.示例性地,图6为本技术实施例提供的又一种数据源连接池控制方法的流程示意图,如图6所示,在服务器专门的数据源连接配置文件中配置程序需要的数据源。程序运行时,需要保证整个过程所有数据源同时可用。需要从所有数据源中等待程序结果后,将结果存入服务器的内存,最后在页面加以展现,在该运行过程中,涉及到的本技术的技术方案请详见下图7。
114.示例性地,图7为本技术实施例提供的又一种数据源连接池控制方法的流程示意图,如图7所示,步骤301表示中间件读取服务器的数据源配置信息,步骤302表示提供数据库连接池管理失效时的自动断开策略,对于已经加载的无效数据库连接,可以选择继承原应用内部自身的断开连接策略,亦可以选择中间件提供的自动断开策略。步骤303表示在不同业务模块配置细化的数据库连接策略,步骤304表示数据源测的数据库信息发生变动时,修改数据源配置信息。
115.图8为本技术实施例提供的一种数据源连接池控制装置的结构示意图,应用于中间件,中间件为可安装的软件;如图8所示,该装置包括:
116.获取单元41,用于通过运行应用的服务器中部署的中间件,获取服务器的数据源配置信息;其中,数据源配置信息表征服务器的数据源连接池的配置信息,配置信息包括服务器的数据库连接策略。
117.确定单元42,用于响应于针对数据库连接策略的编辑操作,确定服务器的数据库连接策略为中间件连接策略;其中,中间件连接策略用于根据服务器接收数据库的数据的接收时间释放服务器与数据库之间的连接。
118.接收单元43,用于响应于查询指令,其中,查询指令用于指示向多个目标数据库查询目标数据,接收多个目标数据库中每一目标数据库发送的目标数据。
119.释放单元44,用于基于中间件连接策略,若确定已获取多个目标数据库中任一目标数据库发送的目标数据,则按照任一目标数据的获取时间,对任一目标数据库与服务器之间的连接进行释放处理。
120.本实施例的装置,可以执行上述方法中的技术方案,其具体实现过程和技术原理相同,此处不再赘述。
121.图9为本技术实施例提供的另一种数据源连接池控制装置的结构示意图,在图8所示实施例的基础上,如图9所示,确定单元42,具体用于:
122.响应于针对数据库连接策略的编辑操作,将数据库连接策略的初始策略更新为中间件连接策略。
123.一个示例中,接收单元43,包括:
124.第一确定模块431,用于响应于查询指令,其中,查询指令包括查询条件信息,根据数据源配置信息确定查询条件信息对应的目标数据库,并向目标数据库发送查询条件信息;其中,查询条件信息用于查询并获取目标数据。
125.第一接收模块432,用于接收目标数据库发送的目标数据。
126.一个示例中,第一确定模块431,包括:
127.第一确定子模块4311,用于响应于查询指令,其中,查询指令包括查询条件信息,确定查询条件信息对应的业务模块;其中,业务模块为预先设置的与业务类型对应的模块,每一业务模块对应有不同的数据源配置信息;确定业务模块的数据源配置信息。
128.第二确定子模块4312,用于根据业务模块的数据源配置信息,确定查询条件信息对应的目标数据库;其中,查询条件信息用于查询并获取目标数据。
129.一个示例中,该装置还包括:
130.生成单元51,用于若确定业务模块为预设的监听模块,其中,监听模块用于指示服务器包含用于监听的代码信息,则生成用于访问目标数据库的数据源连接配置策略;其中,数据源连接配置策略包括目标数据库的访问步骤信息,访问步骤信息包括查询条件信息对应的查询步骤、以及代码信息对应的监听步骤。
131.一个示例中,该装置还包括:
132.第二接收模块433,用于接收目标数据库发送的连接日志;其中,连接日志包括目标数据的获取时间。
133.一个示例中,释放单元44,包括:
134.第二确定模块441,用于若确定已获取多个目标数据库中任一目标数据库中的目标数据,根据任一目标数据库发送的连接日志,确定任一目标数据的获取时间。
135.释放模块442,用于基于中间件连接策略以及任一目标数据的获取时间,对任一目标数据对应的目标数据库与服务器之间的连接进行释放处理。
136.一个示例中,数据源连接池的配置信息还包括多个数据源;该装置还包括:
137.选择单元52,用于若确定获取的配置信息中的数据源发生变更,则响应于选择操作,得到与选择操作对应的数据源配置信息;其中,选择操作包括下述任意一项或多项:
138.新增数据源、删除数据源、修改数据源、查询数据源。
139.一个示例中,数据源配置信息包括针对数据库的连接地址、针对数据库的最大连接数、针对数据库的初始连接数、以及用户信息。
140.本实施例的装置,可以执行上述方法中的技术方案,其具体实现过程和技术原理相同,此处不再赘述。
141.图10为本技术实施例提供的一种服务器的结构示意图,如图10所示,服务器包括:存储器61,处理器62。
142.存储器61中存储有可在处理器62上运行的计算机程序。
143.处理器62被配置为执行如上述实施例提供的方法。
144.服务器还包括接收器63和发送器64。接收器63用于接收外部设备发送的指令和数据,发送器64用于向外部设备发送指令和数据。
145.本技术实施例还提供了一种非临时性计算机可读存储介质,当该存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述实施例提供的方法。
146.本技术实施例还提供了一种计算机程序产品,计算机程序产品包括:计算机程序,计算机程序存储在可读存储介质中,电子设备的至少一个处理器可以从可读存储介质读取计算机程序,至少一个处理器执行计算机程序使得电子设备执行上述任一实施例提供的方案。
147.本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本技术旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求书指出。
148.应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求书来限制。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献