一种通过第三方数据库控制系统切换的方法及系统的制作方法

文档序号:6632608阅读:160来源:国知局
一种通过第三方数据库控制系统切换的方法及系统的制作方法
【专利摘要】本发明涉及一种通过第三方数据库控制系统切换的方法,包括步骤1:调用主机地址,获得数据库状态信息;步骤2:对数据库设置数据库标签,建立对应数据库标签的服务;步骤3:将连接关系和数据库标签存入共享内存中;步骤4:调用一个服务;步骤5:判断调用的服务是否是长连接,如果是,执行步骤6;否则,执行步骤8;步骤6:判断当前数据库标签与共享内存中的数据库标签是否一致,如果是,完成连接,结束;否则,执行步骤7;步骤7:关闭当前数据库;步骤8:按照当前服务对应的数据库标签打开对应的数据库,结束。本发明可实现系统间接入层、业务层、数据层的随时切换,配置灵活,方便控制,同时还保证业务持续性,提高系统切换及时率。
【专利说明】一种通过第三方数据库控制系统切换的方法及系统

【技术领域】
[0001]本发明涉及数据库切换的方法及系统,尤其涉及一种通过第三方数据库控制系统切换的方法及系统,属于通信【技术领域】。

【背景技术】
[0002]应急系统改造项目中,要求系统登录支持多库单点登陆。
[0003]目前,移动BOSS系统登陆支持指定数据库的登陆,但是个别系统突发故障,会导致操作人员无法登陆系统,看不到系统公告而不知所措。


【发明内容】

[0004]本发明所要解决的技术问题是提供一种将系统登陆改造为多库单点登陆的方式,只要多个数据库中任意一个可以连接,即完成登陆要求的通过第三方数据库控制系统切换的方法。
[0005]本发明解决上述技术问题的技术方案如下:一种通过第三方数据库控制系统切换的方法,具体包括以下步骤:
[0006]步骤1:调用一个或多个主机地址,获得多个数据库状态信息;
[0007]步骤2:根据数据库状态信息,对一个或多个主机地址内的处于可操作状态的每个数据库设置数据库标签,建立分别对应每个数据库标签的多个服务;
[0008]步骤3:将上述服务与数据库的连接关系和数据库标签存入共享内存中;
[0009]步骤4:调用一个服务;
[0010]步骤5:判断调用的服务是否是长连接,如果是,执行步骤6 ;否则,执行步骤8 ;
[0011]步骤6:判断当前服务对应的数据库标签与共享内存中的数据库标签是否一致,如果是,完成连接,结束;否则,执行步骤7 ;
[0012]步骤7:关闭当前数据库;
[0013]步骤8:按照共享内存中的数据库标签打开对应的数据库,完成数据库切换,结束。
[0014]本发明的有益效果是:本发明提供的一种通过第三方数据库控制系统切换的配置方法,可实现系统间接入层、业务层、数据层的随时切换,配置灵活,方便控制,同时还保证业务持续性,提高系统切换及时率。
[0015]在上述技术方案的基础上,本发明还可以做如下改进。
[0016]进一步,所述服务包括长连接服务和短连接服务;
[0017]所述长连接服务只有在启动时进行数据库连接,停止时关闭数据库连接,而中间执行业务时不再进行数据库的连接和关闭操作;所述的短连接服务在每次执行业务时都要进行数据库的连接,每次业务执行完毕后关闭数据库连接。
[0018]进一步,所述一个主机地址内包含一个或多个数据库。
[0019]进一步,所述数据库状态信息内保存的是数据库状态,数据库状态包括可操作状态和不可操作状态;只有设置为可操作状态的数据库可操作数据数据库的连接操作。
[0020]本发明所要解决的技术问题是提供一种将系统登陆改造为多库单点登陆的方式,只要多个数据库中任意一个可以连接,即完成登陆要求的通过第三方数据库控制系统切换的系统。
[0021]本发明解决上述技术问题的技术方案如下:一种通过第三方数据库控制系统切换的系统,包括调用主机模块、服务建立模块、库存模块、调用服务模块、服务判断模块、一致判断模块和数据库切换模块;
[0022]所述调用主机模块用于调用一个或多个主机地址,获得多个数据库状态信息;
[0023]所述服务建立模块用于根据数据库状态信息,对一个或多个主机地址内的处于可操作状态的每个数据库设置数据库标签,建立分别对应每个数据库标签的多个服务;
[0024]所述库存模块用于将上述服务与数据库的连接关系和数据库标签存入共享内存中;
[0025]所述调用服务模块用于调用一个服务;
[0026]所述服务判断模块用于判断调用的服务是否是长连接,如果是,将所述服务发送到一致判断模块;否则,将所述服务发送到数据库切换模块;
[0027]所述一致判断模块用于判断当前服务对应的数据库标签与共享内存中的数据库标签是否一致,如果是,完成连接,结束;否则,关闭当前数据库;
[0028]所述数据库切换模块用于按照共享内存中的数据库标签打开对应的数据库,完成数据库切换,结束。
[0029]本发明的有益效果是:本发明提供的一种通过第三方数据库控制系统切换的配置系统,可实现系统间接入层、业务层、数据层的随时切换,配置灵活,方便控制,同时还保证业务持续性,提高系统切换及时率。
[0030]在上述技术方案的基础上,本发明还可以做如下改进。
[0031]进一步,所述服务包括长连接服务和短连接服务;
[0032]所述长连接服务只有在启动时进行数据库连接,停止时关闭数据库连接,而中间执行业务时不再进行数据库的连接和关闭操作;所述的短连接服务在每次执行业务时都要进行数据库的连接,每次业务执行完毕后关闭数据库连接。
[0033]进一步,所述一个主机地址内包含一个或多个数据库。
[0034]进一步,所述数据库状态信息内保存的是数据库状态,数据库状态包括可操作状态和不可操作状态;只有设置为可操作状态的数据库可操作数据数据库的连接操作。

【专利附图】

【附图说明】
[0035]图1为本发明所述的一种通过第三方数据库控制系统切换的方法流程图;
[0036]图2为本发明所述的一种通过第三方数据库控制系统切换的系统结构框图。
[0037]附图中,各标号所代表的部件列表如下:
[0038]1、调用主机模块,2、服务建立模块,3、库存模块,4、调用服务模块,5、服务判断模块,6、一致判断模块,7、数据库切换模块。

【具体实施方式】
[0039]以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
[0040]如图1所示,为本发明所述的一种通过第三方数据库控制系统切换的方法,具体包括以下步骤:
[0041]步骤1:调用一个或多个主机地址,获得多个数据库状态信息;
[0042]步骤2:根据数据库状态信息,对一个或多个主机地址内的处于可操作状态的每个数据库设置数据库标签,建立分别对应每个数据库标签的多个服务;
[0043]步骤3:将上述服务与数据库的连接关系和数据库标签存入共享内存中;
[0044]步骤4:调用一个服务;
[0045]步骤5:判断调用的服务是否是长连接,如果是,执行步骤6 ;否则,执行步骤8 ;
[0046]步骤6:判断当前服务对应的数据库标签与共享内存中的数据库标签是否一致,如果是,完成连接,结束;否则,执行步骤7 ;
[0047]步骤7:关闭当前数据库;
[0048]步骤8:按照共享内存中的数据库标签打开对应的数据库,完成数据库切换,结束。
[0049]所述服务包括长连接服务和短连接服务;
[0050]所述长连接服务只有在启动时进行数据库连接,停止时关闭数据库连接,而中间执行业务时不再进行数据库的连接和关闭操作;所述的短连接服务在每次执行业务时都要进行数据库的连接,每次业务执行完毕后关闭数据库连接。
[0051]所述一个主机地址内包含一个或多个数据库。
[0052]所述数据库状态信息内保存的是数据库状态,数据库状态包括可操作状态和不可操作状态;只有设置为可操作状态的数据库可操作数据数据库的连接操作。
[0053]如图2所示,为本发明所述的一种通过第三方数据库控制系统切换的系统,包括调用主机模块1、服务建立模块2、库存模块3、调用服务模块4、服务判断模块5、一致判断模块6和数据库切换模块7 ;
[0054]所述调用主机模块1用于调用一个或多个主机地址,获得多个数据库状态信息;
[0055]所述服务建立模块2用于根据数据库状态信息,对一个或多个主机地址内的处于可操作状态的每个数据库设置数据库标签,建立分别对应每个数据库标签的多个服务;
[0056]所述库存模块3用于将上述服务与数据库的连接关系和数据库标签存入共享内存中;
[0057]所述调用服务模块4用于调用一个服务;
[0058]所述服务判断模块5用于判断调用的服务是否是长连接,如果是,将所述服务发送到一致判断模块6 ;否则,将所述服务发送到数据库切换模块7 ;
[0059]所述一致判断模块6用于判断当前服务对应的数据库标签与共享内存中的数据库标签是否一致,如果是,完成连接,结束;否则,关闭当前数据库;
[0060]所述数据库切换模块7用于按照共享内存中的数据库标签打开对应的数据库,完成数据库切换,结束。
[0061 ] 所述服务包括长连接服务和短连接服务;
[0062]所述长连接服务只有在启动时进行数据库连接,停止时关闭数据库连接,而中间执行业务时不再进行数据库的连接和关闭操作;所述的短连接服务在每次执行业务时都要进行数据库的连接,每次业务执行完毕后关闭数据库连接。
[0063]所述一个主机地址内包含一个或多个数据库。
[0064]所述数据库状态信息内保存的是数据库状态,数据库状态包括可操作状态和不可操作状态;只有设置为可操作状态的数据库可操作数据数据库的连接操作。
[0065]本发明提供一种通过第三方数据库控制系统切换的配置方法:在第三方数据库上配置业务和服务的对应关系,指定服务连接的数据库标签,可调用的主机地址,以及系统状态标签等信息。通过后台将想要配置的信息写入共享内存,实时读取共享内存信息,控制系统间快速切换,并且根据系统状态“开关”的变化,可通知网厅、短厅、IVR等外围渠道进行同步切换。由于此系统状态标签存放在第三方数据库上,可通过手工或者自动两种方式进行随时修改和控制。
[0066]本发明具体实施过程如下:
[0067]第一步:在第三方数据库上配置业务和该业务提交时所调用服务的对应关系,并指定该系统上服务连接的数据库标签,一个标签可以唯一的确定一个数据库实例下的一个用户,例如tudexo中间件中系统数据库配置文件中会将待连接的每个数据库下的不同用户名进行定义,该定义即可作为一个数据库标签,可调用的主机地址,以及系统状态标签等信息。
[0068]第二步:将上面提到的业务和服务的对应关系、指定服务连接的数据库标签、可调用的主机地址以及系统状态标签等配置信息读入共享内存,即一种复杂的结构体,该结构体可存放配置的所有信息。
[0069]第三步:服务调用时,判断服务是长连接还是短连接? TUXEDO的长连接,短连接一般指在一个tpinit ()/tpterm()之间是否有多个tpcall ()/tpacall ()等,即如果建链一次,反复做业务,为长连接;如果每次做业务都要先建链,为短连接。而对于每个服务使用的是长连接还是短连接,是根据办理业务的使用频率决定。
[0070]第四步:如果是短连接,直接通过共享内存中指定的数据库标签进行连接。连接成功即表不系统切换成功。
[0071]第五步:如果是长连接,要先校验当前服务连接的标签与当前共享内存中的有效数据库标签是否一致,如果一致,不需要再次连接,如果不一致,按照当前有效标签进行重新连接。
[0072]通过重复第一步、第二步,在不修改任何业务处理服务的基础上即可实现数据库切换。
[0073]以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种通过第三方数据库控制系统切换的方法,其特征在于,具体包括以下步骤: 步骤1:调用一个或多个主机地址,获得多个数据库状态信息; 步骤2:根据数据库状态信息,对一个或多个主机地址内的处于可操作状态的每个数据库设置数据库标签,建立分别对应每个数据库标签的多个服务; 步骤3:将上述服务与数据库的连接关系和数据库标签存入共享内存中; 步骤4:调用一个服务; 步骤5:判断调用的服务是否是长连接,如果是,执行步骤6 ;否则,执行步骤8 ; 步骤6:判断当前服务对应的数据库标签与共享内存中的数据库标签是否一致,如果是,完成连接,结束;否则,执行步骤7 ; 步骤7:关闭当前数据库; 步骤8:按照共享内存中的数据库标签打开对应的数据库,完成数据库切换,结束。
2.根据权利要求1所述的一种通过第三方数据库控制系统切换的方法,其特征在于,所述服务包括长连接服务和短连接服务; 所述长连接服务只有在启动时进行数据库连接,停止时关闭数据库连接,而中间执行业务时不再进行数据库的连接和关闭操作;所述的短连接服务在每次执行业务时都要进行数据库的连接,每次业务执行完毕后关闭数据库连接。
3.根据权利要求2所述的一种通过第三方数据库控制系统切换的方法,其特征在于,所述一个主机地址内包含一个或多个数据库。
4.根据权利要求1-3任一项所述的一种通过第三方数据库控制系统切换的方法,其特征在于,所述数据库状态信息内保存的是数据库状态,数据库状态包括可操作状态和不可操作状态;只有设置为可操作状态的数据库可操作数据数据库的连接操作。
5.一种通过第三方数据库控制系统切换的系统,其特征在于,包括调用主机模块、服务建立模块、库存模块、调用服务模块、服务判断模块、一致判断模块和数据库切换模块; 所述调用主机模块用于调用一个或多个主机地址,获得多个数据库状态信息; 所述服务建立模块用于根据数据库状态信息,对一个或多个主机地址内的处于可操作状态的每个数据库设置数据库标签,建立分别对应每个数据库标签的多个服务; 所述库存模块用于将上述服务与数据库的连接关系和数据库标签存入共享内存中; 所述调用服务模块用于调用一个服务; 所述服务判断模块用于判断调用的服务是否是长连接,如果是,将所述服务发送到一致判断模块;否则,将所述服务发送到数据库切换模块; 所述一致判断模块用于判断当前服务对应的数据库标签与共享内存中的数据库标签是否一致,如果是,完成连接,结束;否则,关闭当前数据库; 所述数据库切换模块用于按照共享内存中的数据库标签打开对应的数据库,完成数据库切换,结束。
6.根据权利要求5所述的一种通过第三方数据库控制系统切换的系统,其特征在于,所述服务包括长连接服务和短连接服务; 所述长连接服务只有在启动时进行数据库连接,停止时关闭数据库连接,而中间执行业务时不再进行数据库的连接和关闭操作;所述的短连接服务在每次执行业务时都要进行数据库的连接,每次业务执行完毕后关闭数据库连接。
7.根据权利要求6所述的一种通过第三方数据库控制系统切换的系统,其特征在于,所述一个主机地址内包含一个或多个数据库。
8.根据权利要求5-7任一项所述的一种通过第三方数据库控制系统切换的系统,其特征在于,所述数据库状态信息内保存的是数据库状态,数据库状态包括可操作状态和不可操作状态;只有设置为可操作状态的数据库可操作数据数据库的连接操作。
【文档编号】G06F17/30GK104462200SQ201410602672
【公开日】2015年3月25日 申请日期:2014年10月31日 优先权日:2014年10月31日
【发明者】陈冬雪 申请人:北京思特奇信息技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1