CN104462514A - 数据库的高可用解决方法、连接控制装置和系统 - Google Patents

数据库的高可用解决方法、连接控制装置和系统 Download PDF

Info

Publication number
CN104462514A
CN104462514A CN201410806547.0A CN201410806547A CN104462514A CN 104462514 A CN104462514 A CN 104462514A CN 201410806547 A CN201410806547 A CN 201410806547A CN 104462514 A CN104462514 A CN 104462514A
Authority
CN
China
Prior art keywords
database
client
control device
connection control
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410806547.0A
Other languages
English (en)
Other versions
CN104462514B (zh
Inventor
顾伟涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201410806547.0A priority Critical patent/CN104462514B/zh
Publication of CN104462514A publication Critical patent/CN104462514A/zh
Application granted granted Critical
Publication of CN104462514B publication Critical patent/CN104462514B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems

Abstract

本发明提供了一种数据库的高可用解决方法、连接控制装置和系统,方法包括:接收客户端向数据库发送的针对目标服务的请求;在连接控制装置的配置文件中获取与目标服务对应的目标数据库节点的地址信息;建立客户端与目标数据库节点的连接。通过本发明,能够使得客户端在对数据库发起访问时,可通过连接控制装置的配置文件查找得到最新的数据库的节点的地址信息建立连接,使得即使当数据库发生迁移、扩容等改变时,仍然能保证客户端可以找到对应的数据库节点建立连接,从而使数据库达到了高可用的目的。

Description

数据库的高可用解决方法、连接控制装置和系统
技术领域
本发明涉及计算机领域,具体涉及一种数据库的高可用解决方法、连接控制装置和系统。
背景技术
MongoDB,是目前在IT行业非常流行的一种非关系型数据库(NoSQL),其灵活的数据存储方式备受当前IT从业人员的青睐。随着互联网Web2.0网站的兴起,NoSQL在国内掀起一阵热潮,其中风头最劲的莫过于MongoDB了。越来越多的业界公司已经将MongoDB投入实际的应用环境,很多创业团队也将MongoDB作为自己的首选数据库,创造出非常之多的移动互联网应用。
在目前的MongoDB数据库中,客户端与数据库是直接连接的,客户端向MongoDB数据库请求某种服务时,直接向对应的MongoDB数据库的IP地址发送连接请求,并在连接建立后获取所需数据。
但是由于数据库存储量的逐渐增加等原因,经常会发生数据库迁移、数据库集群服务器中某一服务器宕机等事件,需要将用户的服务转移其他服务器上进行,而客户端对于服务器的变化是无法感知的,这时,客户端就无法正确的通过原IP地址访问数据库的资源,有可能造成重大故障。目前尚无有效技术手段可解决这一问题。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种数据库的高可用解决方法、连接控制装置和系统。
依据本发明的一个方面,提供了一种数据库的高可用解决方法,应用于耦接在客户端与数据库之间的连接控制装置,所述方法包括:
接收所述客户端向所述数据库发送的针对目标服务的请求;
在所述连接控制装置的配置文件中获取与所述目标服务对应的目标数据库节点的地址信息;以及
建立所述客户端与所述目标数据库节点的连接;
其中,所述配置文件中记录有所述数据库所提供的服务,以及该服务所对应的数据库节点的地址信息。
可选地,所述方法进一步包括:
当所述数据库发生迁移时,在所述连接控制装置的配置文件中配置迁移后的所述数据库的节点的地址信息。
可选地,所述方法进一步包括:
在所述连接控制装置的配置文件中删除迁移前的所述数据库的节点的地址信息。
可选地,所述方法进一步包括:
当所述数据库的客户端服务器异常时,重启所述客户端服务器中的Web服务端。
可选地,所述连接控制装置为qconf或Linux虚拟服务器LVS。
可选地,所述地址信息包括IP地址和端口号。
可选地,所述数据库为MongoDB数据库。
依据本发明的一个方面,还提供了连接控制装置,耦接于客户端与数据库之间以实现所述数据库的高可用,所述连接控制装置包括:
接收模块,适于接收所述客户端向所述数据库发送的针对目标服务的请求;
解析模块,适于在所述连接控制装置的配置文件中获取与所述目标服务对应的目标数据库节点的地址信息;以及
建立模块,适于建立所述客户端与所述目标数据库节点的连接;
其中,所述配置文件中记录有所述数据库所提供的服务,以及该服务所对应的数据库节点的地址信息。
可选地,所述解析模块进一步包括:
信息增加单元,适于当所述数据库发生迁移时,在所述连接控制装置的配置文件中增加迁移后的所述数据库的节点的地址信息。
可选地,所述解析模块进一步包括:
信息删除单元,适于在所述连接控制装置的配置文件中删除迁移前的所述数据库的节点的地址信息。
可选地,所述解析模块进一步包括:
重启单元,适于当所述数据库的客户端服务器异常时,重启所述客户端服务器中的Web服务端。
可选地,所述连接控制装置为qconf或LVS。
可选地,所述地址信息包括IP地址和端口号。
可选地,所述数据库为Mongodb数据库。
依据本发明的一个方面,还提供了一种高可用的数据系统,所述系统包括客户端、为所述客户端提供服务的数据库以及上述的连接控制装置。
可选地,所述数据库为MongoDB数据库。
本发明提供了一种数据库的高可用解决方法、连接控制装置和系统,通过在客户端和数据库之间建立连接控制装置,并在连接控制装置的配置文件中保存数据库所提供的服务与最新的数据库节点的地址信息的对应关系,使得客户端在对数据库发起访问时,可通过连接控制装置的配置文件查找得到最新的数据库的节点的地址信息建立连接,使得即使当数据库发生迁移、扩容等改变时,仍然能保证客户端可以找到对应的数据库节点建立连接,从而使数据库达到了高可用的目的。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
根据下文结合附图对本发明具体实施例的详细描述,本领域技术人员将会更加明了本发明的上述以及其他目的、优点和特征。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1是本发明一个实施例提供的一种MongoDB数据库的高可用解决方法流程示意图;
图2是现有的MongoDB数据库的访问系统的架构示意图;
图3是本发明一个实施例提供的一种MongoDB数据库的访问系统的架构示意图;
图4是本发明一个实施例提供的一种MongoDB数据库的高可用具体解决方法流程示意图;
图5是本发明一个实施例提供的一种客户端访问MongoDB数据库时的详细结构示意图;
图6是本发明一个实施例提供的一种MongoDB数据库的访问系统的架构示意图;
图7是本发明一个实施例提供的一种连接控制装置结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应该被这里阐述的实施例所限制。相反,提供这些实施例是为了能够透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
实施例一
本发明实施例提供了一种数据库的高可用解决方法。其可以通过在客户端和数据库之间建立连接控制装置(亦可称为中间层)来实现。其中,该连接控制装置可以通过部署在客户端与数据库之间的服务器来实现。
应可理解,本发明并不限定数据库的类型,只要可以应用本发明下述方案以达到高可用目的的数据库都适用于此。此外,所述连接控制装置也不限定于通过服务器来实现,本领域技术人员在阅读本发明的基础上亦可以其他方式来实施所述的连接控制装置,其皆应涵盖在本发明的范围内。
以下,将以MongoDB数据为例说明本发明的技术方案:
图1是本实施例提供的一种MongoDB数据库的高可用解决方法的流程示意图。该方法通过预先在客户端和MongoDB数据库之间建立的连接控制装置实现,并由该连接控制装置执行步骤S102至步骤S106。
S102:接收客户端向MongoDB数据库发送的针对目标服务的请求。
S104:在连接控制装置的配置文件中获取与目标服务对应的目标数据库节点的地址信息。
S106:建立客户端与目标数据库节点的连接。
其中,上述配置文件中记录有MongoDB数据库所提供的服务,以及该服务所对应的最新的数据库节点的地址信息。
本发明实施例提供了一种MongoDB数据库的高可用解决方法,通过在客户端和MongoDB数据库之间建立连接控制装置,并在连接控制装置的配置文件中保存MongoDB数据库所提供的服务与最新的数据库节点的地址信息的对应关系,使得客户端在对MongoDB数据库发起访问时,可通过连接控制装置的配置文件查找得到最新的数据库的节点的地址信息建立连接,使得即使当MongoDB数据库发生迁移、扩容等改变时,仍然能保证客户端可以找到对应的数据库节点建立连接,从而使MongoDB数据库达到了高可用的目的。
实施例二
本实施例为上述实施例一的一种具体应用场景,通过本实施例,能够更加清楚、具体地阐述本发明所提供的方法。
为了能够更加清楚的对本发明的改进进行说明,在对本实施例进行说明之前,首先说明一下现有的MongoDB数据库的访问系统的架构。如图2所示,即为现有的MongoDB数据库的访问系统的架构图,包括:客户端和MongoDB数据库。
下面分别介绍客户端和MongoDB数据库:
客户端即为对MongoDB数据库发起访问的对象,可以是应用程序、服务器、进程等。
例如:当用户手机中内置的某个APP需要调取后台数据的时候,可能会向MongoDB数据库发起访问请求。
或者,当用户进行网络游戏时,网络游戏的服务器需要在MongoDB数据库中调取多个用户的数据。
MongoDB数据库,是一种关系型数据库,可以用于存储较复杂的数据类型。在本实施例中,MongoDB数据库可以部署在一台服务器上,也可以是部署在集群服务器上,其中,每台用于部署MongoDB数据库的服务器均可以认为是一个数据库节点。
由图2所示的MongoDB数据库的访问系统的架构可知,客户端是直接向MongoDB数据库的节点发起服务请求的,当负责该服务的节点被转移时,由于客户端对其是无法感知的,仍然会对原节点发起请求,这时就会导致访问失败。
为了解决上述问题,本发明实施例提供了一种解决方案,在客户端和MongoDB数据库之间建立一个连接控制装置。如图3所示,为本发明实施例提供的一种MongoDB数据库的访问系统的架构图。其中,本系统架构中,在建立的连接控制装置中保存配置文件,配置文件中记录MongoDB数据库所能提供的每个服务与该服务对应的最新的数据库节点的地址信息。
当客户端发起对某一服务的访问请求时,连接控制装置在配置文件中查找该服务对应的最新的数据库节点的地址信息,则可建立起客户端与该数据库节点的连接,使得即使在数据库节点发生变化的情况下,客户端也可以与最新的数据库节点建立连接,从而使MongoDB数据库能够达到高可用的目的。
为了更清楚的说明本发明,下面以在改进的MongoDB数据库的访问架构下客户端访问MongoDB数据库的方法进行详细说明。
图4是本发明一个实施例提供的一种MongoDB数据库的高可用具体解决方法流程图,该方法包括步骤S401至S403。
首先,执行步骤S401,连接控制装置接收客户端发出的对目标服务的请求。
其中,上述目标服务可以是使MongoDB数据库可提供的任意一个服务,例如,可以包括:
对于特定数据的读取请求、对于特定数据的编辑请求、对于特定数据的删除请求等等。
进一步需要说明的是,本发明所提供的连接控制装置,可以通过LVS(Linux Virtual Server,Linux虚拟服务器)或qconf实现。
其中,LVS是一个虚拟的服务器集群系统,它可以用于对于集群服务器的负载调度,通过LVS提供的IP负载均衡技术,可以将一组集群服务器构成一个高性能、高可用的虚拟服务器。
并且,LVS几乎可以支持目前已有的常用编程语言。
Qconf为奇虎公司自主研发的用于集群服务器的调度器,其可以支持Phython、Java、C语言等。
在接收到对于目标服务的请求后,执行步骤S402,在连接控制装置的配置文件中获取与上述目标服务对应的数据库节点的地址信息。
在本实施例中,上述地址信息优选地包括数据库节点的地址和端口号。
为了更加清楚地介绍本实施例所提供的方法,本实施例还提供了图5,示出了一种客户端访问MongoDB数据库时的详细结构图。
在一般情况下,MongoDB数据库的集群服务器包括有多个数据库节点,并被赋予不同的IP地址。在连接控制装置的配置文件中,配置每一个节点的地址信息与服务的对应关系。
进一步地,若数据库节点发生改变,例如服务器宕机、数据库迁移等,则可以通过执行如下步骤完成对连接控制装置的配置,以使MongoDB数据库高可用,不会影响客户端对于MongoDB数据库的访问:
(1)在连接控制装置的配置文件中加入迁移后的数据库节点的配置信息。
例如,当数据库节点N损坏后,则有可能加入数据库节点M以替代数据节点N,这时需要在连接控制装置的配置文件中加入新的数据库节点M的地址信息,并保存其所对应的服务。
(2)删除迁移前的数据库节点的信息。
例如,在本实施例中,数据库节点N损坏,并打算使用数据库节点M代替,则在配置数据库节点M的地址信息完成后,删除数据库节点N的地址信息。
(3)重启MongoDB数据库的驱动服务器中的Web服务器(Web Server)。
其中,Web Server包括但不限于apache和php-cgi,用于客户端对MongoDB数据库进行访问。
为了更加清晰地展现对连接控制装置的配置的操作,本实施例还提供了图6,示出了一种MongoDB数据库的访问系统的架构示意图。从图6可见,在连接控制装置和MongoDB数据库之间还可以存在“MongoDB驱动”,该驱动中存在一个重要的数据结构-连接管理器,可用于在客户端和MongoDB数据库建立连接后,保存这些连接关系,以供客户端再次连接时,对已保存的连接进行复用,以提高访问效率。
需要说明的是,由于MongoDB数据库的节点发生了变化,客户端和数据库节点之间的连接关系也发生了改变,有可能导致客户端服务器对于MongoDB数据库的访问异常,这时则需要重启客户端服务器中的Web Server,才能启用新的连接,使客户端和数据库节点之间进行正确的连接。如果未发生异常,则无需重启客户端服务器中的Web Server。
其中,对于客户端服务器中的Web Server的重启操作需要在客户端服务器上完成。当MongoDB数据库的节点发生变化需要进行客户端服务器上的重启操作时,可由连接控制装置向对应的客户端服务器发送提醒消息,提示操作者对客户端服务器进行重启。
在步骤S402中查找得到与目标服务对应的数据库节点的地址信息后,则执行步骤S403,建立客户端和目标数据库节点的连接。
其中,由于连接控制装置的配置文件中保存了与目标服务对应的最新的数据库节点的地址信息,则在得到地址信息后,可建立客户端和数据库节点之间的连接。
本发明实施例提供了一种MongoDB数据库的高可用解决方法,通过在客户端和MongoDB数据库之间建立连接控制装置,并在连接控制装置的配置文件中保存MongoDB数据库所提供的服务与最新的数据库节点的地址信息的对应关系,使得客户端在对MongoDB数据库发起访问时,可通过连接控制装置的配置文件查找得到最新的数据库的节点的地址信息建立连接,使得即使当MongoDB数据库发生迁移、扩容等改变时,仍然能保证客户端可以找到对应的数据库节点建立连接,从而使MongoDB数据库达到了高可用的目的。
实施例三
图7是本发明一个实施例提供的一种连接控制装置结构示意图,该连接控制装置700耦接于客户端与数据库之间以实现数据库的高可用,且连接控制装置700包括:
接收模块710,适于接收客户端向数据库发送的针对目标服务的请求;
解析模块720,适于在连接控制装置700的配置文件中获取与目标服务对应的目标数据库节点的地址信息;以及
建立模块730,适于建立客户端与目标数据库节点的连接;
其中,配置文件中记录有上述数据库所提供的服务,以及该服务所对应的最新的数据库节点的地址信息。
可选地,解析模块720进一步包括:
信息增加单元721,适于当数据库发生迁移时,在连接控制装置700的配置文件中增加迁移后的数据库的节点的地址信息。
可选地,解析模块720进一步包括:
信息删除单元722,适于在连接控制装置700的配置文件中删除迁移前的数据库的节点的地址信息。
可选地,解析模块720,还包括:
重启单元723,适于当数据库的客户端服务器异常时,重启客户端服务器中的Web服务端。
可选地,上述连接控制装置700为qconf或LVS。
可选地,上述地址信息包括IP地址和端口号。
可选地,上述数据库为MongoDB数据库。
本发明实施例提供了一种连接控制装置,通过在客户端和数据库之间建立连接控制装置,并在连接控制装置的配置文件中保存数据库所提供的服务与最新的数据库节点的地址信息的对应关系,使得客户端在对数据库发起访问时,可通过连接控制装置的配置文件查找得到最新的数据库的节点的地址信息建立连接,使得即使当数据库发生迁移、扩容等改变时,仍然能保证客户端可以找到对应的数据库节点建立连接,从而使数据库达到了高可用的目的。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的连接控制装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
至此,本领域技术人员应认识到,虽然本文已详尽示出和描述了本发明的多个示例性实施例,但是,在不脱离本发明精神和范围的情况下,仍可根据本发明公开的内容直接确定或推导出符合本发明原理的许多其他变型或修改。因此,本发明的范围应被理解和认定为覆盖了所有这些其他变型或修改。
本发明实施例提供了A1.一种数据库的高可用解决方法,应用于耦接在客户端与数据库之间的连接控制装置,所述方法包括:接收所述客户端向所述数据库发送的针对目标服务的请求;在所述连接控制装置的配置文件中获取与所述目标服务对应的目标数据库节点的地址信息;以及,建立所述客户端与所述目标数据库节点的连接;其中,所述配置文件中记录有所述数据库所提供的服务,以及该服务所对应的数据库节点的地址信息。A2.根据A1所述的方法,其中,所述方法进一步包括:当所述数据库发生迁移时,在所述连接控制装置的配置文件中配置迁移后的所述数据库的节点的地址信息。A3.根据A2所述的方法,其中,所述方法进一步包括:在所述连接控制装置的配置文件中删除迁移前的所述数据库的节点的地址信息。A4.根据A3所述的方法,其中,所述方法进一步包括:当所述数据库的客户端服务器异常时,重启所述客户端服务器中的Web服务端。A5.根据A1至A4中任一项所述的方法,其中,所述连接控制装置为qconf或Linux虚拟服务器LVS。A6.根据A1至A5中任一项所述的方法,其中,所述地址信息包括IP地址和端口号。A7.根据A1至A6中任一项所述的方法,其中,所述数据库为MongoDB数据库。
本发明实施例提供了B8.一种连接控制装置,耦接于客户端与数据库之间以实现所述数据库的高可用,所述连接控制装置包括:接收模块,适于接收所述客户端向所述数据库发送的针对目标服务的请求;解析模块,适于在所述连接控制装置的配置文件中获取与所述目标服务对应的目标数据库节点的地址信息;以及,建立模块,适于建立所述客户端与所述目标数据库节点的连接;其中,所述配置文件中记录有所述数据库所提供的服务,以及该服务所对应的数据库节点的地址信息。B9.根据B8所述的装置,其中,所述解析模块进一步包括:信息增加单元,适于当所述数据库发生迁移时,在所述连接控制装置的配置文件中增加迁移后的所述数据库的节点的地址信息。B10.根据B9所述的装置,其中,所述解析模块进一步包括:信息删除单元,适于在所述连接控制装置的配置文件中删除迁移前的所述数据库的节点的地址信息。B11.根据B10所述的装置,其中,所述解析模块进一步包括:重启单元,适于当所述数据库的客户端服务器异常时,重启所述客户端服务器中的Web服务端。B12.根据B8至B11中任一项所述的装置,其中,所述连接控制装置为qconf或LVS。B13.根据B8至B12中任一项所述的装置,其中,所述地址信息包括IP地址和端口号。B14.根据B8至B13中任一项所述的装置,其中,所述数据库为MongoDB数据库。
本发明实施例提供了C15.一种高可用的数据系统,所述系统包括客户端、为所述客户端提供服务的数据库以及如B8至B14中任一项所述的装置。C16.根据C15所述的系统,其中,所述数据库为MongoDB数据库。

Claims (10)

1.一种数据库的高可用解决方法,应用于耦接在客户端与数据库之间的连接控制装置,所述方法包括:
接收所述客户端向所述数据库发送的针对目标服务的请求;
在所述连接控制装置的配置文件中获取与所述目标服务对应的目标数据库节点的地址信息;以及
建立所述客户端与所述目标数据库节点的连接;
其中,所述配置文件中记录有所述数据库所提供的服务,以及该服务所对应的数据库节点的地址信息。
2.根据权利要求1所述的方法,其中,所述方法进一步包括:
当所述数据库发生迁移时,在所述连接控制装置的配置文件中配置迁移后的所述数据库的节点的地址信息。
3.根据权利要求2所述的方法,其中,所述方法进一步包括:
在所述连接控制装置的配置文件中删除迁移前的所述数据库的节点的地址信息。
4.根据权利要求3所述的方法,其中,所述方法进一步包括:
当所述数据库的客户端服务器异常时,重启所述客户端服务器中的Web服务端。
5.根据权利要求1至4中任一项所述的方法,其中,所述连接控制装置为qconf或Linux虚拟服务器LVS。
6.一种连接控制装置,耦接于客户端与数据库之间以实现所述数据库的高可用,所述连接控制装置包括:
接收模块,适于接收所述客户端向所述数据库发送的针对目标服务的请求;
解析模块,适于在所述连接控制装置的配置文件中获取与所述目标服务对应的目标数据库节点的地址信息;以及
建立模块,适于建立所述客户端与所述目标数据库节点的连接;
其中,所述配置文件中记录有所述数据库所提供的服务,以及该服务所对应的数据库节点的地址信息。
7.根据权利要求6所述的装置,其中,所述解析模块进一步包括:
信息增加单元,适于当所述数据库发生迁移时,在所述连接控制装置的配置文件中增加迁移后的所述数据库的节点的地址信息。
8.根据权利要求7所述的装置,其中,所述解析模块进一步包括:
信息删除单元,适于在所述连接控制装置的配置文件中删除迁移前的所述数据库的节点的地址信息。
9.根据权利要求8所述的装置,其中,所述解析模块进一步包括:
重启单元,适于当所述数据库的客户端服务器异常时,重启所述客户端服务器中的Web服务端。
10.一种高可用的数据系统,所述系统包括客户端、为所述客户端提供服务的数据库以及如权利要求6至9中任一项所述的装置。
CN201410806547.0A 2014-12-19 2014-12-19 数据库的高可用解决方法、连接控制装置和系统 Expired - Fee Related CN104462514B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410806547.0A CN104462514B (zh) 2014-12-19 2014-12-19 数据库的高可用解决方法、连接控制装置和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410806547.0A CN104462514B (zh) 2014-12-19 2014-12-19 数据库的高可用解决方法、连接控制装置和系统

Publications (2)

Publication Number Publication Date
CN104462514A true CN104462514A (zh) 2015-03-25
CN104462514B CN104462514B (zh) 2018-09-11

Family

ID=52908549

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410806547.0A Expired - Fee Related CN104462514B (zh) 2014-12-19 2014-12-19 数据库的高可用解决方法、连接控制装置和系统

Country Status (1)

Country Link
CN (1) CN104462514B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107343034A (zh) * 2017-06-26 2017-11-10 杭州铭师堂教育科技发展有限公司 基于QConf的Redis高可用系统及方法
CN109992531A (zh) * 2019-04-15 2019-07-09 成都四方伟业软件股份有限公司 数据存储方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102982141A (zh) * 2012-11-20 2013-03-20 北京搜狐新媒体信息技术有限公司 一种实现分布式数据库代理的方法及装置
CN103488765A (zh) * 2013-09-28 2014-01-01 雷虹 一种代理数据库的访问驱动及其数据访问方法
CN103605571A (zh) * 2013-11-20 2014-02-26 国家电网公司 数据库连接池的控制方法
US20140279944A1 (en) * 2013-03-15 2014-09-18 University Of Southern California Sql query to trigger translation for maintaining consistency of cache augmented sql systems

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102982141A (zh) * 2012-11-20 2013-03-20 北京搜狐新媒体信息技术有限公司 一种实现分布式数据库代理的方法及装置
US20140279944A1 (en) * 2013-03-15 2014-09-18 University Of Southern California Sql query to trigger translation for maintaining consistency of cache augmented sql systems
CN103488765A (zh) * 2013-09-28 2014-01-01 雷虹 一种代理数据库的访问驱动及其数据访问方法
CN103605571A (zh) * 2013-11-20 2014-02-26 国家电网公司 数据库连接池的控制方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
万春: "基于Linux的数据库集群系统的研究", 《中国优秀硕士学位论文全文数据库》 *
代洪涛: "《Linux 操作与服务器配置实用教程》", 31 January 2014 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107343034A (zh) * 2017-06-26 2017-11-10 杭州铭师堂教育科技发展有限公司 基于QConf的Redis高可用系统及方法
CN109992531A (zh) * 2019-04-15 2019-07-09 成都四方伟业软件股份有限公司 数据存储方法及装置
CN109992531B (zh) * 2019-04-15 2020-11-10 成都四方伟业软件股份有限公司 数据存储方法及装置

Also Published As

Publication number Publication date
CN104462514B (zh) 2018-09-11

Similar Documents

Publication Publication Date Title
US10715485B2 (en) Managing dynamic IP address assignments
CN109547570B (zh) 服务注册方法、装置、注册中心管理设备及存储介质
US11943291B2 (en) Hosted file sync with stateless sync nodes
CN106357738B (zh) 一种服务器集群的自动化部署方法、装置和系统
CN109451088A (zh) 一种数据访问方法及装置
CN103902696A (zh) 一种加载资源文件的方法及装置
CN105515872B (zh) 配置信息的更新方法、装置及系统
CN104714835A (zh) 一种数据访问处理方法及装置
CN105589701B (zh) 一种客户端应用程序局部更新方法及装置
CN1620653A (zh) 计算网络中服务的动态部署
US20160080515A1 (en) Network injected storage redirection for embedded applications
US20170017480A1 (en) Method and apparatus for updating an application in a user terminal
CN111124589B (zh) 一种服务发现系统、方法、装置及设备
CN105373420A (zh) 数据传输方法及装置
CN103136342A (zh) 应用程序app的搜索方法、系统以及搜索服务器
CN103973682A (zh) 进行网页访问的方法及装置
CN110572422A (zh) 数据下载方法和装置
CN104580267A (zh) 一种资源下载方法、装置、服务器和相应的系统
CN109474710B (zh) 获取信息的方法及装置
CN104618388A (zh) 快速注册登录方法及对应的重置服务器、信息服务器
US8510423B2 (en) Install system and install method
CN109343862A (zh) 应用的资源数据的调度方法及装置
CN110413306B (zh) Node项目发布方法、装置、电子设备及可读存储介质
CN104967538A (zh) 网络故障切换方法、设备及系统
CN111176706A (zh) 终端升级方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180911

Termination date: 20211219

CF01 Termination of patent right due to non-payment of annual fee