亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種數(shù)據(jù)庫(kù)的數(shù)據(jù)處理方法、代理服務(wù)器及系統(tǒng)的制作方法

文檔序號(hào):7811000閱讀:169來(lái)源:國(guó)知局
一種數(shù)據(jù)庫(kù)的數(shù)據(jù)處理方法、代理服務(wù)器及系統(tǒng)的制作方法
【專利摘要】本發(fā)明實(shí)施例公開(kāi)了一種數(shù)據(jù)庫(kù)的數(shù)據(jù)處理方法,包括:當(dāng)接收到客戶端發(fā)送的寫操作請(qǐng)求時(shí),根據(jù)所述寫操作請(qǐng)求在預(yù)置的包括至少一個(gè)主數(shù)據(jù)庫(kù)信息的主集群列表中查找與所述寫操作請(qǐng)求匹配的第一主數(shù)據(jù)庫(kù)信息;根據(jù)所述第一主數(shù)據(jù)庫(kù)信息將所述寫操作請(qǐng)求發(fā)送至所述第一主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第一服務(wù)器;當(dāng)接收到所述第一服務(wù)器返回的對(duì)所述第一主數(shù)據(jù)庫(kù)寫入數(shù)據(jù)成功信號(hào)時(shí),在預(yù)置的包括至少一個(gè)備數(shù)據(jù)庫(kù)信息的備集群列表中查找與所述寫操作請(qǐng)求匹配的第一備數(shù)據(jù)庫(kù)信息;根據(jù)所述第一備數(shù)據(jù)庫(kù)信息將所述寫操作請(qǐng)求發(fā)送至所述第一備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第二服務(wù)器。采用本發(fā)明,有效提高備份數(shù)據(jù)庫(kù)的數(shù)據(jù)的安全性。
【專利說(shuō)明】一種數(shù)據(jù)庫(kù)的數(shù)據(jù)處理方法、代理服務(wù)器及系統(tǒng)

【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及通信領(lǐng)域,尤其涉及一種數(shù)據(jù)庫(kù)的數(shù)據(jù)處理方法、代理服務(wù)器及系統(tǒng)。

【背景技術(shù)】
[0002] 目前,服務(wù)器的數(shù)據(jù)一般存儲(chǔ)在服務(wù)器的數(shù)據(jù)庫(kù)中,當(dāng)客戶端在對(duì)服務(wù)器上的數(shù) 據(jù)進(jìn)行讀寫操作時(shí),一般是通過(guò)訪問(wèn)服務(wù)器的數(shù)據(jù)庫(kù)來(lái)對(duì)數(shù)據(jù)進(jìn)行讀寫操作。但是,若是過(guò) 多客戶端對(duì)服務(wù)器的數(shù)據(jù)庫(kù)進(jìn)行讀寫操作時(shí),可能導(dǎo)致數(shù)據(jù)庫(kù)所在的磁盤1〇端口的擁塞 甚至癱瘓,導(dǎo)致客戶端讀寫數(shù)據(jù)庫(kù)的速度過(guò)慢,從而數(shù)據(jù)庫(kù)無(wú)法提供高效的服務(wù)。
[0003] 故為了提高客戶端讀寫數(shù)據(jù)庫(kù)的讀寫速度,目前,大多采用的方式是將數(shù)據(jù)庫(kù)緩 存在內(nèi)存中,以便客戶端可以直接從服務(wù)器的內(nèi)存中訪問(wèn)數(shù)據(jù)庫(kù)。我們可以將緩存在內(nèi)存 中的數(shù)據(jù)庫(kù)稱之為內(nèi)存數(shù)據(jù)庫(kù)。
[0004] 在內(nèi)存數(shù)據(jù)庫(kù)中,為了達(dá)到分布式緩存,以減少數(shù)據(jù)庫(kù)的負(fù)載,提升訪問(wèn)數(shù)據(jù)的目 的,目前采用了主從復(fù)制機(jī)制,即設(shè)置了主數(shù)據(jù)庫(kù)和從數(shù)據(jù)庫(kù),從數(shù)據(jù)庫(kù)是對(duì)主數(shù)據(jù)庫(kù)的內(nèi) 容數(shù)據(jù)進(jìn)行復(fù)制拷貝。當(dāng)主數(shù)據(jù)庫(kù)發(fā)生異常時(shí),從數(shù)據(jù)庫(kù)將替代主數(shù)據(jù)庫(kù)來(lái)提供數(shù)據(jù)給客 戶端進(jìn)行訪問(wèn)。但是,在主數(shù)據(jù)庫(kù)發(fā)生異常啟用從數(shù)據(jù)庫(kù)時(shí),客戶端需要進(jìn)行重啟,獲取從 數(shù)據(jù)庫(kù)的地址,從而對(duì)從數(shù)據(jù)庫(kù)進(jìn)行操作,這將導(dǎo)致數(shù)據(jù)庫(kù)中斷服務(wù),給用戶帶來(lái)不便,并 且,當(dāng)從數(shù)據(jù)庫(kù)損壞重新恢復(fù)主數(shù)據(jù)庫(kù)的數(shù)據(jù)時(shí),將花費(fèi)大量時(shí)間進(jìn)行復(fù)制拷貝,并且影響 了服務(wù)器的正常運(yùn)行。


【發(fā)明內(nèi)容】

[0005] 本發(fā)明實(shí)施例所要解決的技術(shù)問(wèn)題在于,提供一種數(shù)據(jù)庫(kù)的數(shù)據(jù)處理方法、代理 服務(wù)器及系統(tǒng)??墒沟每蛻舳丝煞謩e對(duì)主數(shù)據(jù)庫(kù)和備數(shù)據(jù)庫(kù)進(jìn)行寫操作,使得主數(shù)據(jù)庫(kù)和 備數(shù)據(jù)庫(kù)之間相互獨(dú)立,有效提高備份數(shù)據(jù)庫(kù)的數(shù)據(jù)的安全性,
[0006] 本發(fā)明實(shí)施例第一方面提供一種數(shù)據(jù)庫(kù)的數(shù)據(jù)處理方法,所述方法包括:
[0007] 當(dāng)接收到客戶端發(fā)送的寫操作請(qǐng)求時(shí),根據(jù)所述寫操作請(qǐng)求在預(yù)置的包括至少一 個(gè)主數(shù)據(jù)庫(kù)信息的主集群列表中查找與所述寫操作請(qǐng)求匹配的第一主數(shù)據(jù)庫(kù)信息;
[0008] 根據(jù)所述第一主數(shù)據(jù)庫(kù)信息將所述寫操作請(qǐng)求發(fā)送至所述第一主數(shù)據(jù)庫(kù)信息所 對(duì)應(yīng)的第一服務(wù)器,以使所述第一服務(wù)器根據(jù)所述寫操作請(qǐng)求對(duì)所述第一主數(shù)據(jù)庫(kù)信息所 對(duì)應(yīng)的第一主數(shù)據(jù)庫(kù)進(jìn)行寫入數(shù)據(jù);
[0009] 當(dāng)接收到所述第一服務(wù)器返回的對(duì)所述第一主數(shù)據(jù)庫(kù)寫入數(shù)據(jù)成功信號(hào)時(shí),在預(yù) 置的包括至少一個(gè)備數(shù)據(jù)庫(kù)信息的備集群列表中查找與所述寫操作請(qǐng)求匹配的第一備數(shù) 據(jù)庫(kù)信息;
[0010] 根據(jù)所述第一備數(shù)據(jù)庫(kù)信息將所述寫操作請(qǐng)求發(fā)送至所述第一備數(shù)據(jù)庫(kù)信息所 對(duì)應(yīng)的第二服務(wù)器,以使所述第二服務(wù)器根據(jù)所述寫操作請(qǐng)求對(duì)所述第一備數(shù)據(jù)庫(kù)信息所 對(duì)應(yīng)的第一備數(shù)據(jù)庫(kù)進(jìn)行寫入數(shù)據(jù)。
[0011] 其中,所述方法還包括:
[0012] 當(dāng)接收到客戶端發(fā)送的讀操作請(qǐng)求時(shí),根據(jù)所述讀操作請(qǐng)求在所述主集群列表中 查找與所述讀操作指令匹配的第二主數(shù)據(jù)庫(kù)信息; ______ 占
[0013] 根據(jù)所述第二主數(shù)據(jù)庫(kù)信息將所述讀操作請(qǐng)求發(fā)送至所述主數(shù)據(jù)庫(kù)^息所 對(duì)應(yīng)的第三服務(wù)器,以使所述第三服務(wù)器根據(jù)所述讀操作請(qǐng)求對(duì)所述第二主數(shù)據(jù)庫(kù)佶息所 對(duì)應(yīng)的第二主數(shù)據(jù)庫(kù)進(jìn)行讀取數(shù)據(jù);
[0014] 接收所述第三服務(wù)器返回的所讀取的數(shù)據(jù)。
[0015] 其中,所述接收所述第三服務(wù)器返回的所讀取的數(shù)據(jù)之后包括:
[0016] 根據(jù)所述所讀取的數(shù)據(jù)判斷所述第三服務(wù)器對(duì)所述第一主數(shù)據(jù)庫(kù)讀取數(shù)據(jù)疋否 成功; 、、、、
[0017] 當(dāng)所述第三服務(wù)器對(duì)所述第二主數(shù)據(jù)庫(kù)讀取數(shù)據(jù)失敗時(shí),在所述備集群列表中查 找與所述讀操作指令匹配的第二備數(shù)據(jù)庫(kù)信息; ^
[0018] 根據(jù)所述第二備數(shù)據(jù)庫(kù)信息將所述讀操作指令發(fā)送至所述第二備數(shù)據(jù)庫(kù)信息所 對(duì)應(yīng)的第四服務(wù)器,以使所述第四服務(wù)器根據(jù)所述讀操作請(qǐng)求對(duì)所述第二備數(shù)據(jù)庫(kù)信息所 對(duì)應(yīng)的第二備數(shù)據(jù)庫(kù)進(jìn)行讀取數(shù)據(jù);
[0019] 接收所述第四服務(wù)器返回的所讀取的數(shù)據(jù)。
[0020] 其中,在當(dāng)接收到客戶端發(fā)送的寫操作請(qǐng)求時(shí),根據(jù)所述寫操作請(qǐng)求在預(yù)置的包 括至少一個(gè)主數(shù)據(jù)庫(kù)信息的主集群列表中查找與所述寫操作請(qǐng)求匹配的第一主數(shù)據(jù)庫(kù)信 息之前包括:
[0021] 預(yù)置所述主集群列表和所述備集群列表。
[0022] 其中,所述方法還包括:
[0023] 當(dāng)檢測(cè)到新增第一數(shù)據(jù)庫(kù)時(shí),在所述主集群列表中獲取任意一個(gè)第三主數(shù)據(jù)庫(kù)信 息;
[0024] 獲取所述第三主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第三主數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù),將所述第三主 數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)復(fù)制至所述第一數(shù)據(jù)庫(kù)上;
[0025] 向所述第三主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器發(fā)送第一刪除指令,以刪除所述第三主 數(shù)據(jù)庫(kù)。
[0026] 其中,所述方法還包括:
[0027] 當(dāng)檢測(cè)到新增的第二數(shù)據(jù)庫(kù)時(shí),在所述備集群列表中任意獲取第三備數(shù)據(jù)庫(kù)信 息;
[0028] 獲取所述第三備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第三備數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù),將所述第三備 數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)復(fù)制至所述第二數(shù)據(jù)庫(kù)上;
[0029]向所述第三備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器發(fā)送第第二刪除指令,以刪除所述第三 備數(shù)據(jù)庫(kù)。
[0030] 本發(fā)明實(shí)施例第二方面提供一種代理服務(wù)器,所述服務(wù)器包括:
[0031] 第一查找單元,用于當(dāng)接收到客戶端發(fā)送的寫操作請(qǐng)求時(shí),根據(jù)所述寫操作請(qǐng)求 在預(yù)置的包括至少一個(gè)主數(shù)據(jù)庫(kù)信息的主集群列表中查找與所述寫操作請(qǐng)求匹配的第一 主數(shù)據(jù)庫(kù)信息;
[0032] 第一發(fā)送單元,用于根據(jù)所述第一主數(shù)據(jù)庫(kù)信息將所述寫操作請(qǐng)求發(fā)送至所述第 一主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第一服務(wù)器,以使所述第一服務(wù)器根據(jù)所述寫操作請(qǐng)求對(duì)所述第 一主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第一主數(shù)據(jù)庫(kù)進(jìn)行寫入數(shù)據(jù);
[0033] 第二查找單元,用于當(dāng)接收到所述第一服務(wù)器返回的對(duì)所述第一主數(shù)據(jù)庫(kù)寫入數(shù) 據(jù)成功信號(hào)時(shí),在預(yù)置的包括至少一個(gè)備數(shù)據(jù)庫(kù)信息的備集群列表中查找與所述寫操作請(qǐng) 求匹配的第一備數(shù)據(jù)庫(kù)信息;
[0034] 第二發(fā)送單元,用于根據(jù)所述第一備數(shù)據(jù)庫(kù)信息將所述寫操作請(qǐng)求發(fā)送至所述第 一備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第二服務(wù)器,以使所述第二服務(wù)器根據(jù)所述寫操作請(qǐng)求對(duì)所述第 一備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第一備數(shù)據(jù)庫(kù)進(jìn)行寫入數(shù)據(jù)。
[0035] 其中,所述服務(wù)器還包括:
[0036]第三查找單元,用于當(dāng)接收到客戶端發(fā)送的讀操作請(qǐng)求時(shí),根據(jù)所述讀操作請(qǐng)求 在所述主集群列表中查找與所述讀操作指令匹配的第二主數(shù)據(jù)庫(kù)信息;
[0037]第三發(fā)送單元,用于根據(jù)所述第二主數(shù)據(jù)庫(kù)信息將所述讀操作請(qǐng)求發(fā)送至所述第 二主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第三服務(wù)器,以使所述第三服務(wù)器根據(jù)所述讀操作請(qǐng)求對(duì)所述第 二主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第二主數(shù)據(jù)庫(kù)進(jìn)行讀取數(shù)據(jù);
[0038] 第一接收單元,用于接收所述第三服務(wù)器返回的所讀取的數(shù)據(jù)。
[0039] 其中,所述服務(wù)器包括:
[0040] 判斷單元,用于根據(jù)所述所讀取的數(shù)據(jù)判斷所述第三服務(wù)器對(duì)所述第二主數(shù)據(jù)庫(kù) 讀取數(shù)據(jù)是否成功;
[0041] 第四查找單元,用于當(dāng)所述第三服務(wù)器對(duì)所述第二主數(shù)據(jù)庫(kù)讀取數(shù)據(jù)失敗時(shí),在 所述備集群列表中查找與所述讀操作指令匹配的第二備數(shù)據(jù)庫(kù)信息;
[0042] 第四發(fā)送單元,用于根據(jù)所述第二備數(shù)據(jù)庫(kù)信息將所述讀操作指令發(fā)送至所述第 二備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第四服務(wù)器,以使所述第四服務(wù)器根據(jù)所述讀操作請(qǐng)求對(duì)所述第 二備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第二備數(shù)據(jù)庫(kù)進(jìn)行讀取數(shù)據(jù);
[0043] 第二接收單元,用于接收所述第四服務(wù)器返回的所讀取的數(shù)據(jù)。
[0044] 其中,所述服務(wù)器包括:
[0045] 預(yù)置單元,用于預(yù)置所述主集群列表和所述備集群列表。
[0046] 其中,所述服務(wù)器還包括:
[0047] 第一獲取單元,用于當(dāng)檢測(cè)到新增第一數(shù)據(jù)庫(kù)時(shí),在所述主集群列表中獲取任意 一個(gè)第三主數(shù)據(jù)庫(kù)信息;
[0048]第一復(fù)制單元,用于獲取所述第三主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第三主數(shù)據(jù)庫(kù)所存儲(chǔ)的 數(shù)據(jù),將所述第三主數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)復(fù)制至所述第一數(shù)據(jù)庫(kù)上;
[0049]第一刪除單元,用于向所述第三主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器發(fā)送第一刪除指 令,以刪除所述第三主數(shù)據(jù)庫(kù)。
[0050] 其中,所述服務(wù)器還包括:
[0051] 第二獲取單元,用于當(dāng)檢測(cè)到新增的第二數(shù)據(jù)庫(kù)時(shí),在所述備集群列表中任意獲 取第三備數(shù)據(jù)庫(kù)信息;
[0052] 第二復(fù)制單元,用于獲取所述第三備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第三備數(shù)據(jù)庫(kù)所存儲(chǔ)的 數(shù)據(jù),將所述第三備數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)復(fù)制至所述第二數(shù)據(jù)庫(kù)上;
[0053] 第二刪除單元,用于向所述第三備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器發(fā)送第第二刪除指 令,以刪除所述第三備數(shù)據(jù)庫(kù)
[0054] 本發(fā)明實(shí)施例第三方面還提供一種數(shù)據(jù)庫(kù)的數(shù)據(jù)處理系統(tǒng),包括客戶端、至少一 個(gè)服務(wù)器以及如上所述的代理服務(wù)器。
[0055] 實(shí)施本發(fā)明實(shí)施例,具有如下有益效果:
[0056] 本發(fā)明通過(guò)當(dāng)接收到客戶端發(fā)送的寫操作請(qǐng)求時(shí),根據(jù)所述寫操作請(qǐng)求在預(yù)置的 包括至少一個(gè)主數(shù)據(jù)庫(kù)信息的主集群列表中查找與所述寫操作請(qǐng)求匹配的第一主數(shù)據(jù)庫(kù) 信息,根據(jù)所述第一主數(shù)據(jù)庫(kù)信息將所述寫操作請(qǐng)求發(fā)送至所述第一主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng) 的第一服務(wù)器,當(dāng)接收到所述第一服務(wù)器返回的對(duì)所述第一主數(shù)據(jù)庫(kù)寫入數(shù)據(jù)成功信號(hào) 時(shí),在預(yù)置的包括至少一個(gè)備數(shù)據(jù)庫(kù)信息的備集群列表中查找與所述寫操作請(qǐng)求匹配的第 一備數(shù)據(jù)庫(kù)信息,根據(jù)所述第一備數(shù)據(jù)庫(kù)信息將所述寫操作請(qǐng)求發(fā)送至所述第一備數(shù)據(jù)庫(kù) 信息所對(duì)應(yīng)的第二服務(wù)器,以使所述第二服務(wù)器根據(jù)所述寫操作請(qǐng)求對(duì)所述第一備數(shù)據(jù)庫(kù) 信息所對(duì)應(yīng)的第一備數(shù)據(jù)庫(kù)進(jìn)行寫入數(shù)據(jù),這使得客戶端可分別對(duì)主數(shù)據(jù)庫(kù)和備數(shù)據(jù)庫(kù)進(jìn) 行寫操作,使得主數(shù)據(jù)庫(kù)和備數(shù)據(jù)庫(kù)之間相互獨(dú)立,有效提高備份數(shù)據(jù)庫(kù)的數(shù)據(jù)的安全性, 并且備數(shù)據(jù)庫(kù)不是直接對(duì)主數(shù)據(jù)庫(kù)進(jìn)行復(fù)制,降低對(duì)主數(shù)據(jù)庫(kù)所在服務(wù)器的運(yùn)行負(fù)擔(dān)。

【專利附圖】

【附圖說(shuō)明】
[0057] 為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本 發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以 根據(jù)這些附圖獲得其他的附圖。
[0058] 圖1是本發(fā)明一種數(shù)據(jù)庫(kù)的數(shù)據(jù)處理方法的第一實(shí)施例流程示意圖;
[0059] 圖2是本發(fā)明一種數(shù)據(jù)庫(kù)的數(shù)據(jù)處理方法的第二實(shí)施例流程示意圖;
[0060] 圖3是本發(fā)明一種數(shù)據(jù)庫(kù)的數(shù)據(jù)處理方法的第三實(shí)施例流程示意圖;
[0061] 圖4是本發(fā)明一種數(shù)據(jù)庫(kù)的數(shù)據(jù)處理方法的第四實(shí)施例流程示意圖;
[0062] 圖5是本發(fā)明一種代理服務(wù)器的第一實(shí)施例結(jié)構(gòu)圖;
[0063] 圖6是本發(fā)明一種代理服務(wù)器的第二實(shí)施例結(jié)構(gòu)圖;
[0064] 圖7是本發(fā)明一種代理服務(wù)器的第三實(shí)施例結(jié)構(gòu)圖;
[0065] 圖8是本發(fā)明一種代理服務(wù)器的第四實(shí)施例結(jié)構(gòu)圖;
[0066] 圖9是本發(fā)明一種數(shù)據(jù)庫(kù)的數(shù)據(jù)處理系統(tǒng)的第一實(shí)施例結(jié)構(gòu)圖;

【具體實(shí)施方式】
[0067] 下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完 整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;?本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他 實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0068] 請(qǐng)參見(jiàn)圖1所示的一種數(shù)據(jù)庫(kù)的數(shù)據(jù)處理方法的流程示意圖,如圖1所述,本實(shí)施 例的一種數(shù)據(jù)量的數(shù)據(jù)處理方法包括以下步驟:
[0069] S100,當(dāng)接收到客戶端發(fā)送的寫操作請(qǐng)求時(shí),根據(jù)所述寫操作請(qǐng)求在預(yù)置的包括 至少一個(gè)主數(shù)據(jù)庫(kù)信息的主集群列表中查找與所述寫操作請(qǐng)求匹配的第一主數(shù)據(jù)庫(kù)信息。
[0070] 在本發(fā)明實(shí)施例中,主集群列表可包括至少一個(gè)主數(shù)據(jù)庫(kù)信息,主數(shù)據(jù)庫(kù)信息可 包括主數(shù)據(jù)庫(kù)的編號(hào)、命名以及主數(shù)據(jù)庫(kù)的IP地址等信息,其中,每個(gè)主數(shù)據(jù)庫(kù)的命名可 以是數(shù)據(jù)庫(kù)名稱+編號(hào),例如:當(dāng)數(shù)據(jù)庫(kù)是RedisCremote dictonary server,遠(yuǎn)程字典服 務(wù)器)數(shù)據(jù)庫(kù)時(shí),主數(shù)據(jù)庫(kù)的命名可以是Redis+編號(hào)??蛇x的,主數(shù)據(jù)庫(kù)可包括Redis數(shù) 據(jù)庫(kù),其中,Redis數(shù)據(jù)庫(kù)是基于key-value的內(nèi)存數(shù)據(jù)庫(kù),支持主從復(fù)制,數(shù)據(jù)可以從主數(shù) 據(jù)庫(kù)向多個(gè)備數(shù)據(jù)庫(kù)進(jìn)行同步??蛇x的,主數(shù)據(jù)庫(kù)也可以是mysql數(shù)據(jù)庫(kù)、oracle數(shù)據(jù)庫(kù) 等,在此不對(duì)主數(shù)據(jù)庫(kù)。類型其進(jìn)行限制。
[0071] 進(jìn)一步的,代理服務(wù)器可以連接多個(gè)服務(wù)器,服務(wù)器可以存儲(chǔ)至少一個(gè)主數(shù)據(jù)庫(kù), 其中,服務(wù)器與代理服務(wù)器進(jìn)行TCP(Transmission Control Protocol,傳輸控制協(xié)議)長(zhǎng) 連接,代理服務(wù)器通過(guò)接收客戶端的指令并將指令路由到相應(yīng)的服務(wù)器上的主數(shù)據(jù)庫(kù)上, 從而控制對(duì)主數(shù)據(jù)庫(kù)的讀取或存儲(chǔ)。
[0072] 在本發(fā)明實(shí)施例中,寫操作請(qǐng)求可以攜帶系統(tǒng)分配的鍵值KEY1,代理服務(wù)器可采 用一致性哈希算法對(duì)主集群列表中的主數(shù)據(jù)庫(kù)信息進(jìn)行哈希計(jì)算,獲得與KEY1相匹配的 第一主數(shù)據(jù)庫(kù)信息。具體的:采用一致性哈希算法可以是,首先,對(duì)主集群列表中每個(gè)主數(shù) 據(jù)庫(kù)信息進(jìn)行哈希計(jì)算,其中,可根據(jù)主數(shù)據(jù)庫(kù)信息所包括的IP地址,或者編號(hào)進(jìn)行哈希 計(jì)算,并將其每個(gè)主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的哈希值映射到〇?2的32次方的圓上。其次,根 據(jù)寫操作請(qǐng)求所攜帶的KEY1,將KEY1映射到圓上。最后從映射到的位置開(kāi)始順時(shí)針查找, 獲得的第一個(gè)哈希值所對(duì)應(yīng)的主數(shù)據(jù)庫(kù)信息則為寫操作請(qǐng)求匹配的第一主數(shù)據(jù)庫(kù)信息,如 果超過(guò)2的32次方仍然找不到哈希值,則圓環(huán)上第一個(gè)哈希值所對(duì)應(yīng)的主數(shù)據(jù)庫(kù)信息為寫 操作請(qǐng)求匹配的第一主數(shù)據(jù)庫(kù)信息。
[0073] S101,根據(jù)所述第一主數(shù)據(jù)庫(kù)信息將所述寫操作請(qǐng)求發(fā)送至所述第一主數(shù)據(jù)庫(kù)信 息所對(duì)應(yīng)的第一服務(wù)器,以使所述第一服務(wù)器根據(jù)所述寫操作請(qǐng)求對(duì)所述第一主數(shù)據(jù)庫(kù)信 息所對(duì)應(yīng)的第一主數(shù)據(jù)庫(kù)進(jìn)行寫入數(shù)據(jù)。
[0074] 在本發(fā)明實(shí)施例中,當(dāng)代理服務(wù)器查找到寫操作請(qǐng)求匹配的第一主數(shù)據(jù)庫(kù)信息 后,代理服務(wù)器可根據(jù)第一主數(shù)據(jù)庫(kù)信息所包括的第一主數(shù)據(jù)庫(kù)的IP地址,將寫操作請(qǐng)求 通過(guò)TCP長(zhǎng)連接,路由到第一主數(shù)據(jù)庫(kù)的IP地址所在的第一服務(wù)器上,第一服務(wù)器響應(yīng)所 述寫操作請(qǐng)求對(duì)第一主數(shù)據(jù)庫(kù)進(jìn)行寫入數(shù)據(jù),將所需寫入的數(shù)據(jù)寫入第一主數(shù)據(jù)庫(kù)。其中, 當(dāng)服務(wù)器將所需寫入的數(shù)據(jù)成功寫入第一主數(shù)據(jù)庫(kù)時(shí),第一服務(wù)器可通過(guò)TCP長(zhǎng)連接向代 理服務(wù)器返回寫入數(shù)據(jù)成功信號(hào),當(dāng)?shù)谝环?wù)器將所需寫入的數(shù)據(jù)寫入第一主數(shù)據(jù)庫(kù)失敗 時(shí),第一服務(wù)器可通過(guò)TCP長(zhǎng)連接向代理服務(wù)器返回寫入失敗信號(hào)。
[0075] S102,當(dāng)接收到所述第一服務(wù)器返回的對(duì)所述第一主數(shù)據(jù)庫(kù)寫入數(shù)據(jù)成功信號(hào) 時(shí),在預(yù)置的包括至少一個(gè)備數(shù)據(jù)庫(kù)信息的備集群列表中查找與所述寫操作請(qǐng)求匹配的第 一備數(shù)據(jù)庫(kù)信息。
[0076] 在本發(fā)明實(shí)施例中,備集群列表可包括至少一個(gè)備數(shù)據(jù)庫(kù)信息,備數(shù)據(jù)庫(kù)信息可 包括備數(shù)據(jù)庫(kù)的編號(hào)、命名以及備數(shù)據(jù)庫(kù)的IP地址等信息,其中,每個(gè)備數(shù)據(jù)庫(kù)的命名可 以是數(shù)據(jù)庫(kù)名稱+編號(hào),例如:當(dāng)數(shù)據(jù)庫(kù)是RedisCremote dictonary server,遠(yuǎn)程字典服 務(wù)器)數(shù)據(jù)庫(kù)時(shí),備數(shù)據(jù)庫(kù)的命名可以是Redis+編號(hào)。可選的,備數(shù)據(jù)庫(kù)可包括Redis數(shù) 據(jù)庫(kù),其中,Redis數(shù)據(jù)庫(kù)是基于key-value的內(nèi)存數(shù)據(jù)庫(kù),支持主從復(fù)制,數(shù)據(jù)可以從主數(shù) 據(jù)庫(kù)向多個(gè)備數(shù)據(jù)庫(kù)進(jìn)行同步??蛇x的,備數(shù)據(jù)庫(kù)也可以是mysql數(shù)據(jù)庫(kù)、oracle數(shù)據(jù)庫(kù) 等,在此不對(duì)備數(shù)據(jù)庫(kù)類型其進(jìn)行限制。
[0077] 進(jìn)一步的,代理服務(wù)器可以連接多個(gè)服務(wù)器,服務(wù)器可以存儲(chǔ)至少一個(gè)備數(shù)據(jù)庫(kù), 其中,服務(wù)器與代理服務(wù)器進(jìn)行TCP (Transmission Control Protocol,傳輸控制協(xié)議)長(zhǎng) 連接,代理服務(wù)器通過(guò)接收客戶端的指令并將指令路由到相應(yīng)的服務(wù)器上的備數(shù)據(jù)庫(kù)上, 從而控制對(duì)備數(shù)據(jù)庫(kù)的讀取或存儲(chǔ)。其中,備數(shù)據(jù)庫(kù)與主數(shù)據(jù)庫(kù)不存儲(chǔ)在同個(gè)服務(wù)器上。
[0078] 在本發(fā)明實(shí)施例中,當(dāng)代理服務(wù)器接收到第一主數(shù)據(jù)庫(kù)所在的第一服務(wù)器返回的 寫入數(shù)據(jù)成功信號(hào)后,代理服務(wù)器可獲得第一服務(wù)器已對(duì)第一主數(shù)據(jù)庫(kù)成功寫入數(shù)據(jù)。當(dāng) 第一服務(wù)器己對(duì)第一主數(shù)據(jù)庫(kù)成功寫入數(shù)據(jù)時(shí),代理服務(wù)器將在包括至少一個(gè)備數(shù)據(jù)庫(kù)信 息的備集群數(shù)據(jù)庫(kù)中查找與所述寫操作請(qǐng)求匹配的第一備數(shù)據(jù)庫(kù)信息,以對(duì)第一備數(shù)據(jù)庫(kù) 信息所對(duì)應(yīng)的第一備數(shù)據(jù)庫(kù)進(jìn)行寫入數(shù)據(jù)。
[0079] 在本發(fā)明實(shí)施例中,代理服務(wù)器可采用一致性哈希算法對(duì)備集群列表中的備數(shù)據(jù) 庫(kù)信息進(jìn)行哈希計(jì)算,獲得與寫操作請(qǐng)求所攜帶的KEY1相匹配的第一備數(shù)據(jù)庫(kù)信息。具體 的:采用一致性哈希算法可以是,首先,對(duì)備集群列表中每個(gè)備數(shù)據(jù)庫(kù)信息進(jìn)行哈希計(jì)算, 其中,可根據(jù)備數(shù)據(jù)庫(kù)信息所包括的IP地址,或者編號(hào)進(jìn)行哈希計(jì)算,并將其每個(gè)備數(shù)據(jù) 庫(kù)信息所對(duì)應(yīng)的哈希值映射到0?2的32次方的圓上。其次,根據(jù)寫操作請(qǐng)求所攜帶的 KEY1,將KEY1映射到圓上。最后從映射到的位置開(kāi)始順時(shí)針查找,獲得的第一個(gè)哈希值所 對(duì)應(yīng)的備數(shù)據(jù)庫(kù)信息則為寫操作請(qǐng)求匹配的第一備數(shù)據(jù)庫(kù)信息,如果超過(guò)2的32次方仍然 找不到哈希值,則圓環(huán)上第一個(gè)哈希值為寫操作請(qǐng)求匹配的第一備數(shù)據(jù)庫(kù)的哈希值。采用 一致性哈希算法管理數(shù)據(jù)庫(kù),可以使得數(shù)據(jù)庫(kù)有很好的可擴(kuò)展性和可用性。
[0080] S103,根據(jù)所述第一備數(shù)據(jù)庫(kù)信息將所述寫操作請(qǐng)求發(fā)送至所述第一備數(shù)據(jù)庫(kù)信 息所對(duì)應(yīng)的第二服務(wù)器,以使所述第二服務(wù)器根據(jù)所述寫操作請(qǐng)求對(duì)所述第一備數(shù)據(jù)庫(kù)信 息所對(duì)應(yīng)的第一備數(shù)據(jù)庫(kù)進(jìn)行寫入數(shù)據(jù)。
[0081] 在本發(fā)明實(shí)施例中,當(dāng)代理服務(wù)器查找到寫操作請(qǐng)求匹配的第一備數(shù)據(jù)庫(kù)信息 后,代理服務(wù)器可根據(jù)第一備數(shù)據(jù)庫(kù)信息所包括的第一備數(shù)據(jù)庫(kù)的IP地址,將寫操作請(qǐng)求 通過(guò)TCP長(zhǎng)連接,路由到第一備數(shù)據(jù)庫(kù)的IP地址所在的第二服務(wù)器上,第二服務(wù)器響應(yīng)所 述寫操作請(qǐng)求對(duì)第一備數(shù)據(jù)庫(kù)進(jìn)行寫入數(shù)據(jù),將所需寫入的數(shù)據(jù)寫入第一備數(shù)據(jù)庫(kù)。其中, 當(dāng)服務(wù)器將所需寫入的數(shù)據(jù)成功寫入第一備數(shù)據(jù)庫(kù)時(shí),第二服務(wù)器可通過(guò)TCP長(zhǎng)連接向代 理服務(wù)器返回寫入數(shù)據(jù)成功信號(hào),當(dāng)?shù)诙?wù)器將所需寫入的數(shù)據(jù)寫入第一備數(shù)據(jù)庫(kù)失敗 時(shí),第二服務(wù)器可通過(guò)TCP長(zhǎng)連接向代理服務(wù)器返回寫入失敗信號(hào)。故我們可以理解的是, 備數(shù)據(jù)庫(kù)在進(jìn)行備份時(shí),采用對(duì)備數(shù)據(jù)庫(kù)進(jìn)行寫入數(shù)據(jù)的方式,而不是利用現(xiàn)有的主從復(fù) 制進(jìn)行備份的方式,這可更有效提高備份數(shù)據(jù)庫(kù)的數(shù)據(jù)的安全性以及解決當(dāng)主數(shù)據(jù)庫(kù)故障 時(shí),而使得備數(shù)據(jù)庫(kù)無(wú)法備份的問(wèn)題。
[0082] 在本發(fā)明實(shí)施例中,本發(fā)明通過(guò)當(dāng)接收到客戶端發(fā)送的寫操作請(qǐng)求時(shí),根據(jù)所述 寫操作請(qǐng)求在預(yù)置的包括至少一個(gè)備數(shù)據(jù)庫(kù)信息的備集群列表中查找與所述寫操作請(qǐng)求 匹配的第一備數(shù)據(jù)庫(kù)信息,根據(jù)所述第一備數(shù)據(jù)庫(kù)信息將所述寫操作請(qǐng)求發(fā)送至所述第一 備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第二服務(wù)器,并當(dāng)接收到所述第二服務(wù)器返回的對(duì)所述第一備數(shù)據(jù) 庫(kù)寫入數(shù)據(jù)成功信號(hào)時(shí),在預(yù)置的包括至少一個(gè)備數(shù)據(jù)庫(kù)信息的備集群列表中查找與所述 寫操作請(qǐng)求匹配的第一備數(shù)據(jù)庫(kù)信息,根據(jù)所述第一備數(shù)據(jù)庫(kù)信息將所述寫操作請(qǐng)求發(fā)送 至所述第一備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第二服務(wù)器,以使所述第二服務(wù)器根據(jù)所述寫操作請(qǐng)求 對(duì)所述第一備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第一備數(shù)據(jù)庫(kù)進(jìn)行寫入數(shù)據(jù)。這使得客戶端可分別對(duì)主 數(shù)據(jù)庫(kù)和備數(shù)據(jù)庫(kù)進(jìn)行寫操作,使得主數(shù)據(jù)庫(kù)和備數(shù)據(jù)庫(kù)之間相互獨(dú)立,有效提高備份數(shù) 據(jù)庫(kù)的數(shù)據(jù)的安全性,并且備數(shù)據(jù)庫(kù)不是直接對(duì)主數(shù)據(jù)庫(kù)進(jìn)行復(fù)制,降低對(duì)主數(shù)據(jù)庫(kù)所在 服務(wù)器的運(yùn)行負(fù)擔(dān)。
[0083] 請(qǐng)參見(jiàn)圖2所示的一種數(shù)據(jù)庫(kù)的數(shù)據(jù)處理方法的流程示意圖,如圖2所述,本實(shí)施 例的一種數(shù)據(jù)量的數(shù)據(jù)處理方法包括以下步驟:
[0084] S201,預(yù)置所述主集群列表和所述備集群列表。
[0085] 在本發(fā)明實(shí)施例中,用戶可首先在與代理服務(wù)TCP長(zhǎng)連接的服務(wù)器中進(jìn)行預(yù)置主 集群數(shù)據(jù)庫(kù)和備集群數(shù)據(jù)庫(kù)。其中,用戶可首先根據(jù)客戶端所需數(shù)據(jù)量的大小,提前估算出 需要的數(shù)據(jù)庫(kù)的個(gè)數(shù)。例如:與代理服務(wù)器連接的服務(wù)器共有N臺(tái),在每臺(tái)服務(wù)器上布置Μ 個(gè)主數(shù)據(jù)庫(kù)和Μ個(gè)備數(shù)據(jù)庫(kù),則總共需布置的數(shù)據(jù)庫(kù)Τ有Ν*Μ*2個(gè)。當(dāng)用戶在服務(wù)器中預(yù)置 好主集群數(shù)據(jù)庫(kù)和備數(shù)據(jù)庫(kù),可獲取主集群數(shù)據(jù)庫(kù)的信息和備集群數(shù)據(jù)庫(kù)的信息,并將主 集群數(shù)據(jù)庫(kù)的信息預(yù)置在主集群列表中,備集群數(shù)據(jù)庫(kù)的信息預(yù)置在備集群列表中。其中, 主集群數(shù)據(jù)庫(kù)的信息可包括主集群數(shù)據(jù)庫(kù)的命名、編號(hào)以及ip地址,備集群數(shù)據(jù)庫(kù)的信息 可包括備集群數(shù)據(jù)庫(kù)的命名、編號(hào)以及IP地址。
[0086] S201,當(dāng)接收到客戶端發(fā)送的讀操作請(qǐng)求時(shí),根據(jù)所述讀操作請(qǐng)求在所述主集群 列表中查找與所述讀操作指令匹配的第二主數(shù)據(jù)庫(kù)信息。
[0087] 在本發(fā)明實(shí)施例中,讀操作請(qǐng)求可以攜帶系統(tǒng)分配的鍵值KEY2,代理服務(wù)器可采 用一致性哈希算法對(duì)主集群列表所包括的主數(shù)據(jù)庫(kù)信息進(jìn)行哈希計(jì)算,獲得與KEY2相匹 配的第二主數(shù)據(jù)庫(kù)信息。具體的:采用一致性哈希算法可以是,首先,對(duì)主集群列表中每個(gè) 主數(shù)據(jù)庫(kù)信息進(jìn)行哈希計(jì)算,其中,可根據(jù)主數(shù)據(jù)庫(kù)信息所包括的IP地址,或者編號(hào)進(jìn)行 哈希計(jì)算,并將其每個(gè)主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的哈希值映射到0?2的32次方的圓上。其 次,根據(jù)讀操作請(qǐng)求所攜帶的KEY2,將KEY2映射到圓上。最后從映射到的位置開(kāi)始順時(shí)針 查找,獲得的第一個(gè)哈希值所對(duì)應(yīng)的主數(shù)據(jù)庫(kù)信息則為讀操作請(qǐng)求匹配的第二主數(shù)據(jù)庫(kù)信 息,如果超過(guò)2的32次方仍然找不到哈希值,則圓環(huán)上第一個(gè)哈希值所對(duì)應(yīng)的主數(shù)據(jù)庫(kù)信 息為讀操作請(qǐng)求匹配的第二主數(shù)據(jù)庫(kù)信息。
[0088] S202,根據(jù)所述第二主數(shù)據(jù)庫(kù)信息將所述讀操作請(qǐng)求發(fā)送至所述第二主數(shù)據(jù)庫(kù)信 息所對(duì)應(yīng)的第三服務(wù)器,以使所述第三服務(wù)器根據(jù)所述讀操作請(qǐng)求對(duì)所述第二主數(shù)據(jù)庫(kù)信 息所對(duì)應(yīng)的第二主數(shù)據(jù)庫(kù)進(jìn)行讀取數(shù)據(jù)。
[0089] 在本發(fā)明實(shí)施例中,當(dāng)代理服務(wù)器查找到讀操作請(qǐng)求匹配的第二主數(shù)據(jù)庫(kù)信息 后,代理服務(wù)器可根據(jù)第二主數(shù)據(jù)庫(kù)信息所包括的第二主數(shù)據(jù)庫(kù)的ip地址,將讀操作請(qǐng)求 通過(guò)TCP長(zhǎng)連接,路由到第二主數(shù)據(jù)庫(kù)的IP地址所在的第三服務(wù)器上,第三服務(wù)器響應(yīng)所 述讀操作請(qǐng)求對(duì)第二主數(shù)據(jù)庫(kù)進(jìn)行讀取數(shù)據(jù),獲取所讀取的數(shù)據(jù),并返回給代理服務(wù)器。
[0090] S203,接收所述第三服務(wù)器返回的所讀取的數(shù)據(jù)。
[0091] S204,根據(jù)所述所讀取的數(shù)據(jù)判斷所述第三服務(wù)器對(duì)所述第二主數(shù)據(jù)庫(kù)讀取數(shù)據(jù) 是否成功。 _
[0092] 在本發(fā)明實(shí)施例中,代理服務(wù)器可以根據(jù)服務(wù)器返回的所讀取的數(shù)據(jù)判斷第三服 務(wù)器對(duì)第二主數(shù)據(jù)庫(kù)進(jìn)行讀取數(shù)據(jù)是否讀取成功。其中,可通過(guò)判斷所讀取的數(shù)據(jù)的內(nèi)容 來(lái)判斷服務(wù)器對(duì)第二主數(shù)據(jù)庫(kù)是否讀取成功。例如:當(dāng)所需讀取的數(shù)據(jù)為空、亂碼和無(wú)意義 的字符等,可判斷服務(wù)器對(duì)第二主數(shù)據(jù)庫(kù)讀取失敗。
[0093] S204,當(dāng)所述第三服務(wù)器對(duì)所述第二主數(shù)據(jù)庫(kù)讀取數(shù)據(jù)失敗時(shí),在所述備集群列 表中查找與所述讀操作指令匹配的第二備數(shù)據(jù)庫(kù)信息。
[0094] 在本發(fā)明實(shí)施例中,代理服務(wù)器可采用一致性哈希算法對(duì)備集群列表中的各個(gè)備 數(shù)據(jù)庫(kù)信息進(jìn)行哈希計(jì)算,獲得與KEY2相匹配的第二備數(shù)據(jù)庫(kù)信息。具體的:采用一致性 哈希算法可以是,首先,對(duì)備集群列表中每個(gè)備數(shù)據(jù)庫(kù)信息進(jìn)行哈希計(jì)算,其中,可根據(jù)備 數(shù)據(jù)庫(kù)信息所包括的IP地址,或者編號(hào)進(jìn)行哈希計(jì)算,并將其每個(gè)備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的 哈希值映射到0?2的32次方的圓上。其次,根據(jù)讀操作請(qǐng)求所攜帶的KEY2,將KEY 2映射 到圓上。最后從映射到的位置開(kāi)始順時(shí)針查找,獲得的第一個(gè)哈希值所對(duì)應(yīng)的備數(shù)據(jù)庫(kù)信 息則為讀操作請(qǐng)求匹配的第二備數(shù)據(jù)庫(kù)信息,如果超過(guò)2的32次方仍然找不到哈希值,則 圓環(huán)上第一個(gè)哈希值所對(duì)應(yīng)的主數(shù)據(jù)庫(kù)信息為讀操作請(qǐng)求匹配的第二備數(shù)據(jù)庫(kù)信息。
[0095] S205,根據(jù)所述第二備數(shù)據(jù)庫(kù)信息將所述讀操作指令發(fā)送至所述第二備數(shù)據(jù)庫(kù)信 息所對(duì)應(yīng)的第四服務(wù)器,以使所述第四服務(wù)器根據(jù)所述讀操作請(qǐng)求對(duì)所述第二備數(shù)據(jù)庫(kù)信 息所對(duì)應(yīng)的第二備數(shù)據(jù)庫(kù)進(jìn)行讀取數(shù)據(jù)。
[0096] 在本發(fā)明實(shí)施例中,當(dāng)代理服務(wù)器查找到讀操作請(qǐng)求匹配的第二備數(shù)據(jù)庫(kù)信息 后,代理服務(wù)器可根據(jù)第二備數(shù)據(jù)庫(kù)信息所包括的第二備數(shù)據(jù)庫(kù)的ip地址,將讀操作請(qǐng)求 通過(guò)TCP長(zhǎng)連接,路由到第二備數(shù)據(jù)庫(kù)的IP地址所在的第四服務(wù)器上,第四服務(wù)器響應(yīng)所 述讀操作請(qǐng)求對(duì)第二主數(shù)據(jù)庫(kù)進(jìn)行讀取數(shù)據(jù),獲取所讀取的數(shù)據(jù),并返回給代理服務(wù)器。
[0097] S206,接收所述第四服務(wù)器返回的所讀取的數(shù)據(jù)。
[0098] 在本發(fā)明實(shí)施例中,當(dāng)接收到客戶端發(fā)送的讀操作請(qǐng)求時(shí),根據(jù)所述讀操作請(qǐng)求 在所述主集群列表中查找與所述讀操作指令匹配的第二主數(shù)據(jù)庫(kù)信息,
[0099] 根據(jù)所述第二主數(shù)據(jù)庫(kù)信息將所述讀操作請(qǐng)求發(fā)送至所述第二主數(shù)據(jù)庫(kù)信息所 對(duì)應(yīng)的第三服務(wù)器,接收所述第三服務(wù)器返回的所讀取的數(shù)據(jù),根據(jù)所述所讀取的數(shù)據(jù)判 斷所述第三服務(wù)器對(duì)所述第二主數(shù)據(jù)庫(kù)讀取數(shù)據(jù)是否成功,當(dāng)所述第三服務(wù)器對(duì)所述第二 主數(shù)據(jù)庫(kù)讀取數(shù)據(jù)失敗時(shí),在所述備集群列表中查找與所述讀操作指令匹配的第二備數(shù)據(jù) 庫(kù)信息,根據(jù)所述第二備數(shù)據(jù)庫(kù)信息將所述讀操作指令發(fā)送至所述第二備數(shù)據(jù)庫(kù)信息所對(duì) 應(yīng)的第四服務(wù)器,以使所述第四服務(wù)器根據(jù)所述讀操作請(qǐng)求對(duì)所述第二備數(shù)據(jù)庫(kù)信息所對(duì) 應(yīng)的第二備數(shù)據(jù)庫(kù)進(jìn)行讀取數(shù)據(jù),接收所述第四服務(wù)器返回的所讀取的數(shù)據(jù)。這使得當(dāng)主 數(shù)據(jù)庫(kù)發(fā)生故障時(shí),客戶端無(wú)障礙地可通過(guò)訪問(wèn)備數(shù)據(jù)庫(kù)來(lái)獲取數(shù)據(jù),提高了訪問(wèn)數(shù)據(jù)的 安全性,以及主集群和備集群的可用性。
[0100] 請(qǐng)參見(jiàn)圖3所示的一種數(shù)據(jù)庫(kù)的數(shù)據(jù)處理方法的流程示意圖,如圖3所述,本實(shí)施 例的一種數(shù)據(jù)庫(kù)的數(shù)據(jù)處理方法包括以下步驟:
[0101] S300,當(dāng)檢測(cè)到新增第一數(shù)據(jù)庫(kù)時(shí),在所述主集群列表中獲取任意一個(gè)第三主數(shù) 據(jù)庫(kù)信息。
[0102] 在本發(fā)明實(shí)施例中,當(dāng)與代理服務(wù)器連接的服務(wù)器出現(xiàn)內(nèi)存瓶頸時(shí),用戶可通過(guò) 新增服務(wù)器來(lái)對(duì)內(nèi)存進(jìn)行擴(kuò)容,解決內(nèi)存緊張的問(wèn)題。其中,用戶可先在新增的服務(wù)器上存 儲(chǔ)新的數(shù)據(jù)庫(kù),進(jìn)而再將服務(wù)器與代理服務(wù)器進(jìn)行TCP連接。
[0103] 進(jìn)一步的,當(dāng)存儲(chǔ)有新的數(shù)據(jù)庫(kù)的服務(wù)器與代理服務(wù)器建立連接后,代理服務(wù)器 可檢測(cè)到有新增的第一數(shù)據(jù)庫(kù)。當(dāng)代理服務(wù)器檢測(cè)到有新增的第一數(shù)據(jù)庫(kù)后,代理服務(wù)器 可獲取新增的第一數(shù)據(jù)庫(kù)信息,其中,新增的第一數(shù)據(jù)庫(kù)信息包括新增的第一數(shù)據(jù)庫(kù)的 1p 地址。代理服務(wù)器可在主集群列表中獲取任意一個(gè)第三主數(shù)據(jù)庫(kù)信息。
[0104] S301,獲取所述第三主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第三主數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù),將所述 第三主數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)復(fù)制至所述第一數(shù)據(jù)庫(kù)上。
[0105] 在本發(fā)明實(shí)施例中,當(dāng)代理服務(wù)器獲取到第三主數(shù)據(jù)庫(kù)信息后,代理服務(wù)器可根 據(jù)第三主數(shù)據(jù)庫(kù)信息向第三主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器發(fā)送獲取第三主數(shù)據(jù)庫(kù)所存儲(chǔ) 的數(shù)據(jù)請(qǐng)求,并接受第三主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器響應(yīng)所述請(qǐng)求返回的第三主數(shù)據(jù)庫(kù) 所存儲(chǔ)的數(shù)據(jù)。
[0106] 當(dāng)代理服務(wù)器接收到第三主數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)后,可根據(jù)新增的第一數(shù)據(jù)庫(kù)信 息將第三主數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)發(fā)送至新增的第一數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器,以使服務(wù) 器將第三主數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)復(fù)制至第一數(shù)據(jù)庫(kù)上,同時(shí),更新主集群列表,將所述第一 數(shù)據(jù)庫(kù)信息存儲(chǔ)進(jìn)主集群列表。
[0107] 在具體應(yīng)用中,可例如:執(zhí)行命令[slave of host port],host為第三主數(shù)據(jù)庫(kù)的 IP地址,port為第一數(shù)據(jù)庫(kù)的監(jiān)聽(tīng)端口,通過(guò)這個(gè)命令可以將第一數(shù)據(jù)庫(kù)指定為第三主數(shù) 據(jù)庫(kù)的副本,當(dāng)命令開(kāi)始執(zhí)行時(shí),代理服務(wù)器控制第一數(shù)據(jù)庫(kù)復(fù)制第三主數(shù)據(jù)庫(kù)數(shù)據(jù)。當(dāng)復(fù) 制完成后,代理服務(wù)器將第一數(shù)據(jù)庫(kù)信息設(shè)置為主數(shù)據(jù)庫(kù)信息,從而更新進(jìn)主集群列表中。
[0108] S302,向所述第三主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器發(fā)送第一刪除指令,以刪除所述 第三主數(shù)據(jù)庫(kù)。
[0109] 在本發(fā)明實(shí)施例中,當(dāng)代理服務(wù)器將所述第三主數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)復(fù)制至所述 第一數(shù)據(jù)庫(kù)上后,代理服務(wù)器可向第三主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器發(fā)送第一刪除指令, 以使第三主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器刪除第三主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第三主數(shù)據(jù)庫(kù),從 而釋放第三主數(shù)據(jù)庫(kù)所占用的空間,降低第三主數(shù)據(jù)庫(kù)信息所在的服務(wù)器的內(nèi)存壓力,提 高服務(wù)器的讀取數(shù)據(jù)的效率。
[0110] 進(jìn)一步的,在本發(fā)明實(shí)施例中,當(dāng)新增有多個(gè)數(shù)據(jù)庫(kù)時(shí),當(dāng)刪除第三主數(shù)據(jù)庫(kù)后, 可執(zhí)行S300在所述主集群列表中獲取任意一個(gè)第三主數(shù)據(jù)庫(kù)信息步驟,直至服務(wù)器中的 主數(shù)據(jù)庫(kù)可對(duì)客戶端提供服務(wù)。
[0111] 在本發(fā)明實(shí)施例中,本發(fā)明通過(guò)當(dāng)檢測(cè)到新增第一數(shù)據(jù)庫(kù)時(shí),在所述主集群列表 中獲取任意一個(gè)第三主數(shù)據(jù)庫(kù)信息,獲取所述第三主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第三主數(shù)據(jù)庫(kù)所 存儲(chǔ)的數(shù)據(jù),將所述第三主數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)復(fù)制至所述第一數(shù)據(jù)庫(kù)上,向所述第三主 數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器發(fā)送第一刪除指令,以刪除所述第三主數(shù)據(jù)庫(kù),從而對(duì)主數(shù)據(jù) 庫(kù)進(jìn)行擴(kuò)容,降低了服務(wù)器的內(nèi)存負(fù)擔(dān),提高服務(wù)器的讀取數(shù)據(jù)的效率。
[0112] 請(qǐng)參見(jiàn)圖4所示的一種數(shù)據(jù)庫(kù)的數(shù)據(jù)處理方法的流程示意圖,如圖4所述,本實(shí)施 例的一種數(shù)據(jù)庫(kù)的數(shù)據(jù)處理方法包括以下步驟:
[0113] S400,當(dāng)檢測(cè)到新增的第二數(shù)據(jù)庫(kù)時(shí),在所述備集群列表中任意獲取第三備數(shù)據(jù) 庫(kù)信息
[0114] 當(dāng)主集群數(shù)據(jù)庫(kù)可對(duì)客戶端提供服務(wù),并且仍有剩余的新增數(shù)據(jù)庫(kù)時(shí),或者是檢 測(cè)到用戶指定的新增的第二數(shù)據(jù)庫(kù)時(shí),代理服務(wù)器可獲取新增的第二數(shù)據(jù)庫(kù)信息,其中,新 增的第二數(shù)據(jù)庫(kù)信息包括新增的第而數(shù)據(jù)庫(kù)的IP地址。代理服務(wù)器可在備集群列表中獲 取任意一個(gè)第三備數(shù)據(jù)庫(kù)信息。
[0115] S401,獲取所述第三備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第三備數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù),將所述 第三備數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)復(fù)制至所述第二數(shù)據(jù)庫(kù)上。
[0116] 在本發(fā)明實(shí)施例中,當(dāng)代理服務(wù)器獲取到第三備數(shù)據(jù)庫(kù)信息后,代理服務(wù)器可根 據(jù)第三備數(shù)據(jù)庫(kù)信息向第三備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器發(fā)送獲取第三備數(shù)據(jù)庫(kù)所存儲(chǔ) 的數(shù)據(jù)請(qǐng)求,并接受第三備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器響應(yīng)所述請(qǐng)求返回的第三備數(shù)據(jù)庫(kù) 所存儲(chǔ)的數(shù)據(jù)。
[0117] 當(dāng)代理服務(wù)器接收到第三備數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)后,可根據(jù)新增的第二數(shù)據(jù)庫(kù)信 息將第三備數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)發(fā)送至新增的第二數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器,以使服務(wù) 器將第三備數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)復(fù)制至第二數(shù)據(jù)庫(kù)上,同時(shí),更新備集群列表,將所述第二 數(shù)據(jù)庫(kù)信息存儲(chǔ)進(jìn)備集群列表。
[0118] 在具體應(yīng)用中,可例如:執(zhí)行命令[slave of host port],host為第三備數(shù)據(jù)庫(kù)的 IP地址,port為第二數(shù)據(jù)庫(kù)的監(jiān)聽(tīng)端口,通過(guò)這個(gè)命令可以將第二數(shù)據(jù)庫(kù)指定為第三備數(shù) 據(jù)庫(kù)的副本,當(dāng)命令開(kāi)始執(zhí)行時(shí),代理服務(wù)器控制第二數(shù)據(jù)庫(kù)復(fù)制第三備數(shù)據(jù)庫(kù)數(shù)據(jù)。當(dāng)復(fù) 制完成后,代理服務(wù)器將第二數(shù)據(jù)庫(kù)信息設(shè)置為備數(shù)據(jù)庫(kù)信息,從而更新進(jìn)備集群列表中。
[0119] S402,向所述第三備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器發(fā)送第第二刪除指令,以刪除所 述第三備數(shù)據(jù)庫(kù)。
[0120] 在本發(fā)明實(shí)施例中,當(dāng)代理服務(wù)器將所述第三備數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)復(fù)制至所述 第二數(shù)據(jù)庫(kù)上后,代理服務(wù)器可向第三備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器發(fā)送第二刪除指令, 以使第三備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器刪除第三備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第三備數(shù)據(jù)庫(kù),從 而釋放第三備數(shù)據(jù)庫(kù)所占用的空間,降低第三備數(shù)據(jù)庫(kù)信息所在的服務(wù)器的內(nèi)存壓力,提 高服務(wù)器的讀取數(shù)據(jù)的效率。
[0121] 進(jìn)一步的,在本發(fā)明實(shí)施例中,當(dāng)新增有多個(gè)數(shù)據(jù)庫(kù)時(shí),當(dāng)刪除第三備數(shù)據(jù)庫(kù)后, 可執(zhí)行S400所述備集群列表中任意獲取第三備數(shù)據(jù)庫(kù)信息步驟。
[0122] 在本發(fā)明實(shí)施例中,本發(fā)明通過(guò)當(dāng)檢測(cè)到新增的第二數(shù)據(jù)庫(kù)時(shí),在所述備集群列 表中任意獲取第三備數(shù)據(jù)庫(kù)信息,獲取所述第三備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第三備數(shù)據(jù)庫(kù)所存 儲(chǔ)的數(shù)據(jù),將所述第三備數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)復(fù)制至所述第二數(shù)據(jù)庫(kù)上,向所述第三備數(shù) 據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器發(fā)送第第二刪除指令,以刪除所述第三備數(shù)據(jù)庫(kù),從而對(duì)備數(shù)據(jù) 庫(kù)進(jìn)行擴(kuò)容,降低了服務(wù)器的內(nèi)存負(fù)擔(dān),提高服務(wù)器的讀取數(shù)據(jù)的效率。
[0123] 請(qǐng)參見(jiàn)圖5所示的一種代理服務(wù)器結(jié)構(gòu)圖,如圖5所示,本實(shí)施例的一種代理服務(wù) 器包括:
[0124] 第一查找單元100,用于當(dāng)接收到客戶端發(fā)送的寫操作請(qǐng)求時(shí),根據(jù)所述寫操作請(qǐng) 求在預(yù)置的包括至少一個(gè)主數(shù)據(jù)庫(kù)信息的主集群列表中查找與所述寫操作請(qǐng)求匹配的第 一主數(shù)據(jù)庫(kù)信息。
[0125] 在本發(fā)明實(shí)施例中,主集群列表可包括至少一個(gè)主數(shù)據(jù)庫(kù)信息,主數(shù)據(jù)庫(kù)信息可 包括主數(shù)據(jù)庫(kù)的編號(hào)、命名以及主數(shù)據(jù)庫(kù)的IP地址等信息,其中,每個(gè)主數(shù)據(jù)庫(kù)的命名可 以是數(shù)據(jù)庫(kù)名稱+編號(hào),例如:當(dāng)數(shù)據(jù)庫(kù)是Redis(remote dictonary server,遠(yuǎn)程字典服 務(wù)器)數(shù)據(jù)庫(kù)時(shí),主數(shù)據(jù)庫(kù)的命名可以是Redis+編號(hào)。可選的,主數(shù)據(jù)庫(kù)可包括Redis數(shù) 據(jù)庫(kù),其中,Redis數(shù)據(jù)庫(kù)是基于key-value的內(nèi)存數(shù)據(jù)庫(kù),支持主從復(fù)制,數(shù)據(jù)可以從主數(shù) 據(jù)庫(kù)向多個(gè)備數(shù)據(jù)庫(kù)進(jìn)行同步??蛇x的,主數(shù)據(jù)庫(kù)也可以是mysql數(shù)據(jù)庫(kù)、oracle數(shù)據(jù)庫(kù) 等,在此不對(duì)主數(shù)據(jù)庫(kù)。類型其進(jìn)行限制。
[0126] 進(jìn)一步的,代理服務(wù)器可以連接多個(gè)服務(wù)器,服務(wù)器可以存儲(chǔ)至少一個(gè)主數(shù)據(jù)庫(kù), 其中,服務(wù)器與代理服務(wù)器進(jìn)行TCP(Transmission Control Protocol,傳輸控制協(xié)議)長(zhǎng) 連接,代理服務(wù)器通過(guò)接收客戶端的指令并將指令路由到相應(yīng)的服務(wù)器上的主數(shù)據(jù)庫(kù)上, 從而控制對(duì)主數(shù)據(jù)庫(kù)的讀取或存儲(chǔ)。
[0127] 在本發(fā)明實(shí)施例中,寫操作請(qǐng)求可以攜帶系統(tǒng)分配的鍵值KEY1,代理服務(wù)器的第 一查找單元100可采用一致性哈希算法對(duì)主數(shù)據(jù)庫(kù)信息進(jìn)行哈希計(jì)算,獲得與KEY1相匹配 的第一主數(shù)據(jù)庫(kù)信息。具體的:第一查找單元100采用一致性哈希算法可以是,首先,第一 查找單元100對(duì)主集群列表中每個(gè)主數(shù)據(jù)庫(kù)信息進(jìn)行哈希計(jì)算,其中,可根據(jù)主數(shù)據(jù)庫(kù)信 息所包括的IP地址,或者編號(hào)進(jìn)行哈希計(jì)算,并將其每個(gè)主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的哈希值映 射到0?2的32次方的圓上。其次,第一查找單元100根據(jù)寫操作請(qǐng)求所攜帶的KEY1,將 KEY1映射到圓上。最后從映射到的位置開(kāi)始順時(shí)針查找,獲得的第一個(gè)哈希值所對(duì)應(yīng)的主 數(shù)據(jù)庫(kù)信息則為寫操作請(qǐng)求匹配的第一主數(shù)據(jù)庫(kù)信息,如果超過(guò)2的32次方仍然找不到哈 希值,則圓環(huán)上第一個(gè)哈希值所對(duì)應(yīng)的主數(shù)據(jù)庫(kù)信息為寫操作請(qǐng)求匹配的第一主數(shù)據(jù)庫(kù)信 息。
[0128] 第一發(fā)送單元200,用于根據(jù)所述第一主數(shù)據(jù)庫(kù)信息將所述寫操作請(qǐng)求發(fā)送至所 述第一主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第一服務(wù)器,以使所述第一服務(wù)器根據(jù)所述寫操作請(qǐng)求對(duì)所 述第一主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第一主數(shù)據(jù)庫(kù)進(jìn)行寫入數(shù)據(jù)。
[0129] 在本發(fā)明實(shí)施例中,當(dāng)代理服務(wù)器的第一查找單元100查找到寫操作請(qǐng)求匹配的 第一主數(shù)據(jù)庫(kù)信息后,代理服務(wù)器的第一發(fā)送單元200可根據(jù)第一主數(shù)據(jù)庫(kù)信息所包括的 第一主數(shù)據(jù)庫(kù)的IP地址,將寫操作請(qǐng)求通過(guò)TCP長(zhǎng)連接,路由到第一主數(shù)據(jù)庫(kù)的IP地址所 在的第一服務(wù)器上,第一服務(wù)器響應(yīng)所述寫操作請(qǐng)求對(duì)第一主數(shù)據(jù)庫(kù)進(jìn)行寫入數(shù)據(jù),將所 需寫入的數(shù)據(jù)寫入第一主數(shù)據(jù)庫(kù)。其中,當(dāng)服務(wù)器將所需寫入的數(shù)據(jù)成功寫入第一主數(shù)據(jù) 庫(kù)時(shí),第一服務(wù)器可通過(guò)TCP長(zhǎng)連接向代理服務(wù)器返回寫入數(shù)據(jù)成功信號(hào),當(dāng)?shù)谝环?wù)器 將所需寫入的數(shù)據(jù)寫入第一主數(shù)據(jù)庫(kù)失敗時(shí),第一服務(wù)器可通過(guò)TCP長(zhǎng)連接向代理服務(wù)器 返回寫入失敗信號(hào)。
[0130] 第二查找單元300,用于當(dāng)接收到所述第一服務(wù)器返回的對(duì)所述第一主數(shù)據(jù)庫(kù)寫 入數(shù)據(jù)成功信號(hào)時(shí),在預(yù)置的包括至少一個(gè)備數(shù)據(jù)庫(kù)信息的備集群列表中查找與所述寫操 作請(qǐng)求匹配的第一備數(shù)據(jù)庫(kù)信息。
[0131] 在本發(fā)明實(shí)施例中,備集群列表可包括至少一個(gè)備數(shù)據(jù)庫(kù)信息,備數(shù)據(jù)庫(kù)信息可 包括備數(shù)據(jù)庫(kù)的編號(hào)、命名以及備數(shù)據(jù)庫(kù)的IP地址等信息,其中,每個(gè)備數(shù)據(jù)庫(kù)的命名可 以是數(shù)據(jù)庫(kù)名稱+編號(hào),例如:當(dāng)數(shù)據(jù)庫(kù)是Redis (remote dictonary server,遠(yuǎn)程字典服 務(wù)器)數(shù)據(jù)庫(kù)時(shí),備數(shù)據(jù)庫(kù)的命名可以是Redis+編號(hào)??蛇x的,備數(shù)據(jù)庫(kù)可包括Redis數(shù) 據(jù)庫(kù),其中,Redis數(shù)據(jù)庫(kù)是基于key-value的內(nèi)存數(shù)據(jù)庫(kù),支持主從復(fù)制,數(shù)據(jù)可以從主數(shù) 據(jù)庫(kù)向多個(gè)備數(shù)據(jù)庫(kù)進(jìn)行同步??蛇x的,備數(shù)據(jù)庫(kù)也可以是mysql數(shù)據(jù)庫(kù)、 oracle數(shù)據(jù)庫(kù) 等,在此不對(duì)備數(shù)據(jù)庫(kù)類型其進(jìn)行限制。
[0132] 進(jìn)一步的,代理服務(wù)器可以連接多個(gè)服務(wù)器,服務(wù)器可以存儲(chǔ)至少一個(gè)備數(shù)據(jù)庫(kù), 其中,服務(wù)器與代理服務(wù)器進(jìn)行TCPCTransmission Control Protocol,傳輸控制協(xié)議)長(zhǎng) 連接,代理服務(wù)器通過(guò)接收客戶端的指令并將指令路由到相應(yīng)的服務(wù)器上的備數(shù)據(jù)庫(kù)上, 從而控制對(duì)備數(shù)據(jù)庫(kù)的讀取或存儲(chǔ)。其中,備數(shù)據(jù)庫(kù)與主數(shù)據(jù)庫(kù)不存儲(chǔ)在同個(gè)服務(wù)器上。
[0133] 在本發(fā)明實(shí)施例中,當(dāng)代理服務(wù)器接收到第一主數(shù)據(jù)庫(kù)所在的第一服務(wù)器返回的 寫入數(shù)據(jù)成功信號(hào)后,代理服務(wù)器可獲得第一服務(wù)器已對(duì)第一主數(shù)據(jù)庫(kù)成功寫入數(shù)據(jù)。當(dāng) 第一服務(wù)器已對(duì)第一主數(shù)據(jù)庫(kù)成功寫入數(shù)據(jù)時(shí),代理服務(wù)器的第二查找單元300將在包括 至少一個(gè)備數(shù)據(jù)庫(kù)信息的備集群數(shù)據(jù)庫(kù)中查找與所述寫操作請(qǐng)求匹配的第一備數(shù)據(jù)庫(kù)信 息,以對(duì)第一備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第一備數(shù)據(jù)庫(kù)進(jìn)行寫入數(shù)據(jù)。
[0134] 在本發(fā)明實(shí)施例中,代理服務(wù)器的第二查找單元300可采用一致性哈希算法對(duì)備 數(shù)據(jù)庫(kù)信息進(jìn)行哈希計(jì)算,獲得與寫操作請(qǐng)求所攜帶的KEY1相匹配的第一備數(shù)據(jù)庫(kù)信息。 具體的:第二查找單元300采用一致性哈希算法可以是,首先,第二查找單元300對(duì)備集群 列表中每個(gè)備數(shù)據(jù)庫(kù)信息進(jìn)行哈希計(jì)算,其中,可根據(jù)備數(shù)據(jù)庫(kù)信息所包括的IP地址,或 者編號(hào)進(jìn)行哈希計(jì)算,并將其每個(gè)備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的哈希值映射到0?2的32次方的 圓上。其次,第二查找單元 3〇〇根據(jù)寫操作請(qǐng)求所攜帶的KEY1,將ΚΕΠ映射到圓上。最后 從映射到的位置開(kāi)始順時(shí)針查找,獲得的第一個(gè)哈希值所對(duì)應(yīng)的備數(shù)據(jù)庫(kù)信息則為寫操作 請(qǐng)求匹配的第一備數(shù)據(jù)庫(kù)信息,如果超過(guò)2的32次方仍然找不到哈希值,則圓環(huán)上第一個(gè) 哈希值為寫操作請(qǐng)求匹配的第一備數(shù)據(jù)庫(kù)的哈希值。采用一致性哈希算法管理數(shù)據(jù)庫(kù),可 以使得數(shù)據(jù)庫(kù)有很好的可擴(kuò)展性和可用性。
[0135] 第二發(fā)送單元400,用于根據(jù)所述第一備數(shù)據(jù)庫(kù)信息將所述寫操作請(qǐng)求發(fā)送至所 述第一備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第二服務(wù)器,以使所述第二服務(wù)器根據(jù)所述寫操作請(qǐng)求對(duì)所 述第一備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第一備數(shù)據(jù)庫(kù)進(jìn)行寫入數(shù)據(jù)。
[0136] 在本發(fā)明實(shí)施例中,當(dāng)代理服務(wù)器查找到寫操作請(qǐng)求匹配的第一備數(shù)據(jù)庫(kù)信息 后,代理服務(wù)器的第二發(fā)送單元400可根據(jù)第一備數(shù)據(jù)庫(kù)信息所包括的第一備數(shù)據(jù)庫(kù)的IP 地址,將寫操作請(qǐng)求通過(guò)TCP長(zhǎng)連接,路由到第一備數(shù)據(jù)庫(kù)的IP地址所在的第二服務(wù)器上, 第二服務(wù)器響應(yīng)所述寫操作請(qǐng)求對(duì)第一備數(shù)據(jù)庫(kù)進(jìn)行寫入數(shù)據(jù),將所需寫入的數(shù)據(jù)寫入第 一備數(shù)據(jù)庫(kù)。其中,當(dāng)服務(wù)器將所需寫入的數(shù)據(jù)成功寫入第一備數(shù)據(jù)庫(kù)時(shí),第二服務(wù)器可通 過(guò)TCP長(zhǎng)連接向代理服務(wù)器返回寫入數(shù)據(jù)成功信號(hào),當(dāng)?shù)诙?wù)器將所需寫入的數(shù)據(jù)寫入 第一備數(shù)據(jù)庫(kù)失敗時(shí),第二服務(wù)器可通過(guò)TCP長(zhǎng)連接向代理服務(wù)器返回寫入失敗信號(hào)。故 我們可以理解的是,備數(shù)據(jù)庫(kù)在進(jìn)行備份時(shí),采用對(duì)備數(shù)據(jù)庫(kù)進(jìn)行寫入數(shù)據(jù)的方式,而不是 利用現(xiàn)有的主從復(fù)制進(jìn)行備份的方式,這可更有效提高備份數(shù)據(jù)庫(kù)的數(shù)據(jù)的安全性以及解 決當(dāng)主數(shù)據(jù)庫(kù)故障時(shí),而使得備數(shù)據(jù)庫(kù)無(wú)法備份的問(wèn)題。
[0137]在本發(fā)明實(shí)施例中,本發(fā)明通過(guò)當(dāng)接收到客戶端發(fā)送的寫操作請(qǐng)求時(shí),根據(jù)所述 寫操作請(qǐng)求在預(yù)置的包括至少一個(gè)備數(shù)據(jù)庫(kù)信息的備集群列表中查找與所述寫操作請(qǐng)求 匹配的第一備數(shù)據(jù)庫(kù)信息,根據(jù)所述第一備數(shù)據(jù)庫(kù)信息將所述寫操作請(qǐng)求發(fā)送至所述第一 備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第二服務(wù)器,并當(dāng)接收到所述第二服務(wù)器返回的對(duì)所述第一備數(shù)據(jù) 庫(kù)寫入數(shù)據(jù)成功信號(hào)時(shí),在預(yù)置的包括至少一個(gè)備數(shù)據(jù)庫(kù)信息的備集群列表中查找與所述 寫操作請(qǐng)求匹配的第一備數(shù)據(jù)庫(kù)信息,根據(jù)所述第一備數(shù)據(jù)庫(kù)信息將所述寫操作請(qǐng)求發(fā)送 至所述第一備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第二服務(wù)器,以使所述第二服務(wù)器根據(jù)所述寫操作請(qǐng)求 對(duì)所述第一備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第一備數(shù)據(jù)庫(kù)進(jìn)行寫入數(shù)據(jù)。這使得客戶端可分別對(duì)主 數(shù)據(jù)庫(kù)和備數(shù)據(jù)庫(kù)進(jìn)行寫操作,使得主數(shù)據(jù)庫(kù)和備數(shù)據(jù)庫(kù)之間相互獨(dú)立,有效提高備份數(shù) 據(jù)庫(kù)的數(shù)據(jù)的安全性,并且備數(shù)據(jù)庫(kù)不是直接對(duì)主數(shù)據(jù)庫(kù)進(jìn)行復(fù)制,降低對(duì)主數(shù)據(jù)庫(kù)所在 服務(wù)器的運(yùn)行負(fù)擔(dān)。
[0138] 請(qǐng)參見(jiàn)圖6所示的一種代理服務(wù)器結(jié)構(gòu)圖,如圖6所示,本實(shí)施例的一種代理服務(wù) 器包括:
[0139] 預(yù)置單元500,用于預(yù)置所述主集群列表和所述備集群列表。
[0140] 在本發(fā)明實(shí)施例中,用戶可首先在與代理服務(wù)TCP長(zhǎng)連接的服務(wù)器中進(jìn)行預(yù)置主 集群數(shù)據(jù)庫(kù)和備集群數(shù)據(jù)庫(kù)。其中,用戶可首先根據(jù)客戶端所需數(shù)據(jù)量的大小,提前估算出 需要的數(shù)據(jù)庫(kù)的個(gè)數(shù)。例如:與代理服務(wù)器連接的服務(wù)器共有N臺(tái),在每臺(tái)服務(wù)器上布置Μ 個(gè)主數(shù)據(jù)庫(kù)和Μ個(gè)備數(shù)據(jù)庫(kù),則總共需布置的數(shù)據(jù)庫(kù)Τ有Ν*Μ*2個(gè)。當(dāng)用戶在服務(wù)器中預(yù) 置好主集群數(shù)據(jù)庫(kù)和備數(shù)據(jù)庫(kù),預(yù)置單元500獲取主集群數(shù)據(jù)庫(kù)的信息和備集群數(shù)據(jù)庫(kù)的 信息,并將主集群數(shù)據(jù)庫(kù)的信息預(yù)置在主集群列表中,備集群數(shù)據(jù)庫(kù)的信息預(yù)置在備集群 列表中。其中,主集群數(shù)據(jù)庫(kù)的信息可包括主集群數(shù)據(jù)庫(kù)的命名、編號(hào)以及IP地址,備集群 數(shù)據(jù)庫(kù)的信息可包括備集群數(shù)據(jù)庫(kù)的命名、編號(hào)以及IP地址。
[0141] 第三查找單元600,用于當(dāng)接收到客戶端發(fā)送的讀操作請(qǐng)求時(shí),根據(jù)所述讀操作請(qǐng) 求在所述主集群列表中查找與所述讀操作指令匹配的第二主數(shù)據(jù)庫(kù)信息。
[0142] 在本發(fā)明實(shí)施例中,讀操作請(qǐng)求可以攜帶系統(tǒng)分配的鍵值KEY2,代理服務(wù)器的第 三查找單元600可采用一致性哈希算法對(duì)主集群列表所包括的主數(shù)據(jù)庫(kù)信息進(jìn)行哈希計(jì) 算,獲得與KEY2相匹配的第二主數(shù)據(jù)庫(kù)信息。具體的:第三查找單元600采用一致性哈希 算法可以是,首先,第三查找單元600對(duì)主集群列表中每個(gè)主數(shù)據(jù)庫(kù)信息進(jìn)行哈希計(jì)算,其 中,可根據(jù)主數(shù)據(jù)庫(kù)信息所包括的IP地址,或者編號(hào)進(jìn)行哈希計(jì)算,并將其每個(gè)主數(shù)據(jù)庫(kù) 信息所對(duì)應(yīng)的哈希值映射到0?2的32次方的圓上。其次,第三查找單元600根據(jù)讀操 作請(qǐng)求所攜帶的KEY2,將KEY2映射到圓上。最后從映射到的位置開(kāi)始順時(shí)針查找,獲得的 第一個(gè)哈希值所對(duì)應(yīng)的主數(shù)據(jù)庫(kù)信息則為讀操作請(qǐng)求匹配的第二主數(shù)據(jù)庫(kù)信息,如果超過(guò) 2的32次方仍然找不到哈希值,則圓環(huán)上第一個(gè)哈希值所對(duì)應(yīng)的主數(shù)據(jù)庫(kù)信息為讀操作請(qǐng) 求匹配的第二主數(shù)據(jù)庫(kù)信息。
[0143] 第三發(fā)送單元700,用于根據(jù)所述第二主數(shù)據(jù)庫(kù)信息將所述讀操作請(qǐng)求發(fā)送至所 述第二主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第三服務(wù)器,以使所述第三服務(wù)器根據(jù)所述讀操作請(qǐng)求對(duì)所 述第二主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第二主數(shù)據(jù)庫(kù)進(jìn)行讀取數(shù)據(jù)。
[0144] 在本發(fā)明實(shí)施例中,當(dāng)代理服務(wù)器查找到讀操作請(qǐng)求匹配的第二主數(shù)據(jù)庫(kù)信息 后,代理服務(wù)器的第三發(fā)送單元700可根據(jù)第二主數(shù)據(jù)庫(kù)信息所包括的第二主數(shù)據(jù)庫(kù)的IP 地址,將讀操作請(qǐng)求通過(guò)TCP長(zhǎng)連接,路由到第二主數(shù)據(jù)庫(kù)的IP地址所在的第三服務(wù)器上, 第三服務(wù)器響應(yīng)所述讀操作請(qǐng)求對(duì)第二主數(shù)據(jù)庫(kù)進(jìn)行讀取數(shù)據(jù),獲取所讀取的數(shù)據(jù),并返 回給代理服務(wù)器。
[0145] 第一接收單元800,用于接收所述第三服務(wù)器返回的所讀取的數(shù)據(jù)。
[0146] 判斷單元900,用于根據(jù)所述所讀取的數(shù)據(jù)判斷所述第三服務(wù)器對(duì)所述第二主數(shù) 據(jù)庫(kù)讀取數(shù)據(jù)是否成功。
[0147] 在本發(fā)明實(shí)施例中,代理服務(wù)器的判斷單元900可以根據(jù)服務(wù)器返回的所讀取的 數(shù)據(jù)判斷第三服務(wù)器對(duì)第二主數(shù)據(jù)庫(kù)進(jìn)行讀取數(shù)據(jù)是否讀取成功。其中,判斷單元900可 通過(guò)判斷所讀取的數(shù)據(jù)的內(nèi)容來(lái)判斷服務(wù)器對(duì)第二主數(shù)據(jù)庫(kù)是否讀取成功。例如:當(dāng)所需 讀取的數(shù)據(jù)為空、亂碼和無(wú)意義的字符等,可判斷服務(wù)器對(duì)第二主數(shù)據(jù)庫(kù)讀取失敗。當(dāng)判 斷單元900判斷所述第三服務(wù)器對(duì)所述第二主數(shù)據(jù)庫(kù)讀取數(shù)據(jù)失敗時(shí),通知第四查找單元 901在所述備集群列表中查找與所述讀操作指令匹配的第二備數(shù)據(jù)庫(kù)信息。
[0148]第四查找單元901,用于當(dāng)所述第三服務(wù)器對(duì)所述第二主數(shù)據(jù)庫(kù)讀取數(shù)據(jù)失敗時(shí), 在所述備集群列表中查找與所述讀操作指令匹配的第二備數(shù)據(jù)庫(kù)信息。
[0149] 在本發(fā)明實(shí)施例中,代理服務(wù)器的第四查找單元901可采用一致性哈希算法對(duì)備 集群列表中的各個(gè)備數(shù)據(jù)庫(kù)信息進(jìn)行哈希計(jì)算,獲得與KEY2相匹配的第二備數(shù)據(jù)庫(kù)信息。 具體的:第四查找單元9〇1采用一致性哈希算法可以是,首先,對(duì)備集群列表中每個(gè)備數(shù)據(jù) 庫(kù)信息進(jìn)行哈希計(jì)算,其中,第四查找單元901可根據(jù)備數(shù)據(jù)庫(kù)信息所包括的IP地址,或者 編號(hào)進(jìn)行哈希計(jì)算,并將其每個(gè)備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的哈希值映射到0?2的32次方的圓 上。其次,第四查找單元901根據(jù)讀操作請(qǐng)求所攜帶的KEY2,將KEY2映射到圓上。最后從 映射到的位置開(kāi)始順時(shí)針查找,獲得的第一個(gè)哈希值所對(duì)應(yīng)的備數(shù)據(jù)庫(kù)信息則為讀操作請(qǐng) 求匹配的第二備數(shù)據(jù)庫(kù)信息,如果超過(guò)2的32次方仍然找不到哈希值,則圓環(huán)上第一個(gè)哈 希值所對(duì)應(yīng)的主數(shù)據(jù)庫(kù)信息為讀操作請(qǐng)求匹配的第二備數(shù)據(jù)庫(kù)信息。
[0150] 第四發(fā)送單元902,用于根據(jù)所述第二備數(shù)據(jù)庫(kù)信息將所述讀操作指令發(fā)送至所 述第二備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第四服務(wù)器,以使所述第四服務(wù)器根據(jù)所述讀操作請(qǐng)求對(duì)所 述第二備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第二備數(shù)據(jù)庫(kù)進(jìn)行讀取數(shù)據(jù)。
[0151] 在本發(fā)明實(shí)施例中,當(dāng)代理服務(wù)器查找到讀操作請(qǐng)求匹配的第二備數(shù)據(jù)庫(kù)信息 后,代理服務(wù)器的第四發(fā)送單元902可根據(jù)第二備數(shù)據(jù)庫(kù)信息所包括的第二備數(shù)據(jù)庫(kù)的IP 地址,將讀操作請(qǐng)求通過(guò)TCP長(zhǎng)連接,路由到第二備數(shù)據(jù)庫(kù)的IP地址所在的第四服務(wù)器上, 第四服務(wù)器響應(yīng)所述讀操作請(qǐng)求對(duì)第二主數(shù)據(jù)庫(kù)進(jìn)行讀取數(shù)據(jù),獲取所讀取的數(shù)據(jù),并返 回給代理服務(wù)器。
[0152] 第二接收單元903,用于接收所述第四服務(wù)器返回的所讀取的數(shù)據(jù)。
[0153] 在本發(fā)明實(shí)施例中,當(dāng)接收到客戶端發(fā)送的讀操作請(qǐng)求時(shí),根據(jù)所述讀操作請(qǐng)求 在所述主集群列表中查找與所述讀操作指令匹配的第二主數(shù)據(jù)庫(kù)信息,
[0154] 根據(jù)所述第二主數(shù)據(jù)庫(kù)信息將所述讀操作請(qǐng)求發(fā)送至所述第二主數(shù)據(jù)庫(kù)信息所 對(duì)應(yīng)的第三服務(wù)器,接收所述第三服務(wù)器返回的所讀取的數(shù)據(jù),根據(jù)所述所讀取的數(shù)據(jù)判 斷所述第三服務(wù)器對(duì)所述第二主數(shù)據(jù)庫(kù)讀取數(shù)據(jù)是否成功,當(dāng)所述第三服務(wù)器對(duì)所述第二 主數(shù)據(jù)庫(kù)讀取數(shù)據(jù)失敗時(shí),在所述備集群列表中查找與所述讀操作指令匹配的第二備數(shù)據(jù) 庫(kù)信息,根據(jù)所述第二備數(shù)據(jù)庫(kù)信息將所述讀操作指令發(fā)送至所述第二備數(shù)據(jù)庫(kù)信息所對(duì) 應(yīng)的第四服務(wù)器,以使所述第四服務(wù)器根據(jù)所述讀操作請(qǐng)求對(duì)所述第二備數(shù)據(jù)庫(kù)信息所對(duì) 應(yīng)的第二備數(shù)據(jù)庫(kù)進(jìn)行讀取數(shù)據(jù),接收所述第四服務(wù)器返回的所讀取的數(shù)據(jù)。這使得當(dāng)主 數(shù)據(jù)庫(kù)發(fā)生故障時(shí),客戶端無(wú)障礙地可通過(guò)訪問(wèn)備數(shù)據(jù)庫(kù)來(lái)獲取數(shù)據(jù),提高了訪問(wèn)數(shù)據(jù)的 安全性,以及主集群和備集群的可用性。
[0155] 請(qǐng)參見(jiàn)圖7所示的一種代理服務(wù)器結(jié)構(gòu)圖,如圖7所示,本實(shí)施例的一種代理服務(wù) 器包括:
[0156] 第一獲取單元801,用于當(dāng)檢測(cè)到新增第一數(shù)據(jù)庫(kù)時(shí),在所述主集群列表中獲取任 意一個(gè)第三主數(shù)據(jù)庫(kù)信息。
[0157] 在本發(fā)明實(shí)施例中,當(dāng)與代理服務(wù)器連接的服務(wù)器出現(xiàn)內(nèi)存瓶頸時(shí),用戶可通過(guò) 新增服務(wù)器來(lái)對(duì)內(nèi)存進(jìn)行擴(kuò)容,解決內(nèi)存緊張的問(wèn)題。其中,用戶可先在新增的服務(wù)器上存 儲(chǔ)新的數(shù)據(jù)庫(kù),進(jìn)而再將服務(wù)器與代理服務(wù)器進(jìn)行TCP連接。
[0158] 進(jìn)一步的,當(dāng)存儲(chǔ)有新的數(shù)據(jù)庫(kù)的服務(wù)器與代理服務(wù)器建立連接后,代理服務(wù)器 的第一獲取單元801可檢測(cè)到有新增的第一數(shù)據(jù)庫(kù)。當(dāng)代理服務(wù)器的第一獲取單元801檢 測(cè)到有新增的第一數(shù)據(jù)庫(kù)后,第一獲取單元801可獲取新增的第一數(shù)據(jù)庫(kù)信息,其中,新增 的第一數(shù)據(jù)庫(kù)信息包括新增的第一數(shù)據(jù)庫(kù)的IP地址。代理服務(wù)器可在主集群列表中獲取 任意一個(gè)第三主數(shù)據(jù)庫(kù)信息。
[0159] 第一復(fù)制單元802,用于獲取所述第三主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第三主數(shù)據(jù)庫(kù)所存 儲(chǔ)的數(shù)據(jù),將所述第三主數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)復(fù)制至所述第一數(shù)據(jù)庫(kù)上。
[0160] 在本發(fā)明實(shí)施例中,當(dāng)代理服務(wù)器獲取到第三主數(shù)據(jù)庫(kù)信息后,代理服務(wù)器的第 一復(fù)制單元802可根據(jù)第三主數(shù)據(jù)庫(kù)信息向第三主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器發(fā)送獲取 第三主數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)請(qǐng)求,并接受第三主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器響應(yīng)所述請(qǐng)求 返回的第三主數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)。
[0161]當(dāng)代理服務(wù)器的第一復(fù)制單元802接收到第三主數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)后,可根據(jù) 新增的第一數(shù)據(jù)庫(kù)信息將第三主數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)發(fā)送至新增的第一數(shù)據(jù)庫(kù)信息所對(duì) 應(yīng)的服務(wù)器,以使服務(wù)器將第三主數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)復(fù)制至第一數(shù)據(jù)庫(kù)上,同時(shí),第一復(fù) 制單元802更新主集群列表,將所述第一數(shù)據(jù)庫(kù)信息存儲(chǔ)進(jìn)主集群列表。
[0162] 在具體應(yīng)用中,可例如:執(zhí)行命令[slave of host port],host為第三主數(shù)據(jù)庫(kù)的 IP地址,port為第一數(shù)據(jù)庫(kù)的監(jiān)聽(tīng)端口,通過(guò)這個(gè)命令可以將第一數(shù)據(jù)庫(kù)指定為第三主數(shù) 據(jù)庫(kù)的副本,當(dāng)命令開(kāi)始執(zhí)行時(shí),代理服務(wù)器控制第一數(shù)據(jù)庫(kù)復(fù)制第三主數(shù)據(jù)庫(kù)數(shù)據(jù)。當(dāng)復(fù) 制完成后,代理服務(wù)器將第一數(shù)據(jù)庫(kù)信息設(shè)置為主數(shù)據(jù)庫(kù)信息,從而更新進(jìn)主集群列表中。
[0163] 第一刪除單元803,用于向所述第三主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器發(fā)送第一刪除 指令,以刪除所述第三主數(shù)據(jù)庫(kù)。
[0164] 在本發(fā)明實(shí)施例中,當(dāng)代理服務(wù)器將所述第三主數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)復(fù)制至所述 第一數(shù)據(jù)庫(kù)上后,代理服務(wù)器的第一刪除單元803可向第三主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器 發(fā)送第一刪除指令,以使第三主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器刪除第三主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng) 的第三主數(shù)據(jù)庫(kù),從而釋放第三主數(shù)據(jù)庫(kù)所占用的空間,降低第三主數(shù)據(jù)庫(kù)信息所在的服 務(wù)器的內(nèi)存壓力,提高服務(wù)器的讀取數(shù)據(jù)的效率。
[0165] 進(jìn)一步的,在本發(fā)明實(shí)施例中,當(dāng)新增有多個(gè)數(shù)據(jù)庫(kù)時(shí),當(dāng)刪除第三主數(shù)據(jù)庫(kù)后, 可通知第一獲取單元801在所述主集群列表中獲取任意一個(gè)第三主數(shù)據(jù)庫(kù)信息,直至服務(wù) 器中的主數(shù)據(jù)庫(kù)可對(duì)客戶端提供服務(wù)。
[0166] 在本發(fā)明實(shí)施例中,本發(fā)明通過(guò)當(dāng)檢測(cè)到新增第一數(shù)據(jù)庫(kù)時(shí),在所述主集群列表 中獲取任意一個(gè)第三主數(shù)據(jù)庫(kù)信息,獲取所述第三主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第三主數(shù)據(jù)庫(kù)所 存儲(chǔ)的數(shù)據(jù),將所述第三主數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)復(fù)制至所述第一數(shù)據(jù)庫(kù)上,向所述第三主 數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器發(fā)送第一刪除指令,以刪除所述第三主數(shù)據(jù)庫(kù),從而對(duì)主數(shù)據(jù) 庫(kù)進(jìn)行擴(kuò)容,降低了服務(wù)器的內(nèi)存負(fù)擔(dān),提高服務(wù)器的讀取數(shù)據(jù)的效率。
[0167] 請(qǐng)參見(jiàn)圖8所示的一種代理服務(wù)器結(jié)構(gòu)圖,如圖8所示,本實(shí)施例的一種代理服務(wù) 器包括:
[0168] 第二獲取單元701,用于當(dāng)檢測(cè)到新增的第二數(shù)據(jù)庫(kù)時(shí),在所述備集群列表中任意 獲取第三備數(shù)據(jù)庫(kù)信息。
[0169] 當(dāng)主集群數(shù)據(jù)庫(kù)可對(duì)客戶端提供服務(wù),并且仍有剩余的新增數(shù)據(jù)庫(kù)時(shí),或者是檢 測(cè)到用戶指定的新增的第二數(shù)據(jù)庫(kù)時(shí),代理服務(wù)器的第二獲取單元701可獲取新增的第二 數(shù)據(jù)庫(kù)信息,其中,新增的第二數(shù)據(jù)庫(kù)信息包括新增的第而數(shù)據(jù)庫(kù)的IP地址。代理服務(wù)器 可在備集群列表中獲取任意一個(gè)第三備數(shù)據(jù)庫(kù)信息。
[0170]第二復(fù)制單元7〇2,用于獲取所述第三備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第三備數(shù)據(jù)庫(kù)所存 儲(chǔ)的數(shù)據(jù),將所述第三備數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)復(fù)制至所述第二數(shù)據(jù)庫(kù)上。
[0171]在本發(fā)明實(shí)施例中,當(dāng)代理服務(wù)器獲取到第三備數(shù)據(jù)庫(kù)信息后,代理服務(wù)器的第 二復(fù)制單元702可根據(jù)第三備數(shù)據(jù)庫(kù)信息向第三備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器發(fā)送獲取 第三備數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)請(qǐng)求,并接受第三備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器響應(yīng)所述請(qǐng)求 返回的第三備數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)。
[0172]當(dāng)代理服務(wù)器的第二復(fù)制單元702接收到第三備數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)后,第二復(fù) 制單元702可根據(jù)新增的第二數(shù)據(jù)庫(kù)信息將第三備數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)發(fā)送至新增的第 二數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器,以使服務(wù)器將第三備數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)復(fù)制至第二數(shù)據(jù) 庫(kù)上,同時(shí),第二復(fù)制單元702更新備集群列表,將所述第二數(shù)據(jù)庫(kù)信息存儲(chǔ)進(jìn)備集群列 表。
[0173] 在具體應(yīng)用中,可例如:執(zhí)行命令[slave of host port],host為第三備數(shù)據(jù)庫(kù)的 IP地址,port為第二數(shù)據(jù)庫(kù)的監(jiān)聽(tīng)端口,通過(guò)這個(gè)命令可以將第二數(shù)據(jù)庫(kù)指定為第三備數(shù) 據(jù)庫(kù)的副本,當(dāng)命令開(kāi)始執(zhí)行時(shí),代理服務(wù)器控制第二數(shù)據(jù)庫(kù)復(fù)制第三備數(shù)據(jù)庫(kù)數(shù)據(jù)。當(dāng)復(fù) 制完成后,代理服務(wù)器將第二數(shù)據(jù)庫(kù)信息設(shè)置為備數(shù)據(jù)庫(kù)信息,從而更新進(jìn)備集群列表中。
[0174] 第二刪除單元703,用于向所述第三備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器發(fā)送第第二刪 除指令,以刪除所述第三備數(shù)據(jù)庫(kù)。
[0175] 在本發(fā)明實(shí)施例中,當(dāng)代理服務(wù)器將所述第三備數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)復(fù)制至所述 第二數(shù)據(jù)庫(kù)上后,代理服務(wù)器的第二刪除單元703可向第三備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器 發(fā)送第二刪除指令,以使第三備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器刪除第三備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng) 的第三備數(shù)據(jù)庫(kù),從而釋放第三備數(shù)據(jù)庫(kù)所占用的空間,降低第三備數(shù)據(jù)庫(kù)信息所在的服 務(wù)器的內(nèi)存壓力,提高服務(wù)器的讀取數(shù)據(jù)的效率。
[0176] 進(jìn)一步的,在本發(fā)明實(shí)施例中,當(dāng)新增有多個(gè)數(shù)據(jù)庫(kù)時(shí),當(dāng)?shù)诙h除單元703刪除 第三備數(shù)據(jù)庫(kù)后,可通知第二獲取單元 7〇1在所述備集群列表中任意獲取第三備數(shù)據(jù)庫(kù)信 息。
[0177] 在本發(fā)明實(shí)施例中,本發(fā)明通過(guò)當(dāng)檢測(cè)到新增的第二數(shù)據(jù)庫(kù)時(shí),在所述備集群列 表中任意獲取第三備數(shù)據(jù)庫(kù)信息,獲取所述第三備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第三備數(shù)據(jù)庫(kù)所存 儲(chǔ)的數(shù)據(jù),將所述第三備數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)復(fù)制至所述第二數(shù)據(jù)庫(kù)上,向所述第三備數(shù) 據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器發(fā)送第第二刪除指令,以刪除所述第三備數(shù)據(jù)庫(kù),從而對(duì)備數(shù)據(jù) 庫(kù)進(jìn)行擴(kuò)容,降低了服務(wù)器的內(nèi)存負(fù)擔(dān),提高服務(wù)器的讀取數(shù)據(jù)的效率。
[0178] 請(qǐng)參見(jiàn)圖9所示的一種數(shù)據(jù)庫(kù)的數(shù)據(jù)處理系統(tǒng)結(jié)構(gòu)圖,如圖9所示,本實(shí)施例的一 種數(shù)據(jù)庫(kù)的數(shù)據(jù)處理系統(tǒng)包括:
[0179] 客戶端10、至少一個(gè)服務(wù)器2〇和代理服務(wù)器30。
[0180] 其中,客戶端10與服務(wù)器20分別與代理服務(wù)器30連接。服務(wù)器20可存儲(chǔ)至少 主數(shù)據(jù)庫(kù)和/至少一個(gè)備數(shù)據(jù)庫(kù)。
[0181] 優(yōu)選的,客戶端10向代理服務(wù)器30發(fā)送讀寫指令,代理服務(wù)器30根據(jù)讀寫指令 將讀寫指令路由到相應(yīng)的服務(wù)器進(jìn)行響應(yīng)。其中,代理服務(wù)器30的具體實(shí)現(xiàn)方式可參見(jiàn)以 上實(shí)施例所述的代理服務(wù)器,在此不再進(jìn)行贅述。
[0182] 通過(guò)上述實(shí)施例的描述,本發(fā)明具有以下優(yōu)點(diǎn):
[0183]本發(fā)明通過(guò)當(dāng)接收到客戶端發(fā)送的寫操作請(qǐng)求時(shí),根據(jù)所述寫操作請(qǐng)求在預(yù)置的 包括至少一個(gè)主數(shù)據(jù)庫(kù)信息的主集群列表中查找與所述寫操作請(qǐng)求匹配的第一主數(shù)據(jù)庫(kù) 信息,根據(jù)所述第一主數(shù)據(jù)庫(kù)信息將所述寫操作請(qǐng)求發(fā)送至所述第一主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng) 的第一服務(wù)器,當(dāng)接收到所述第一服務(wù)器返回的對(duì)所述第一主數(shù)據(jù)庫(kù)寫入數(shù)據(jù)成功信號(hào) 時(shí),在預(yù)置的包括至少一個(gè)備數(shù)據(jù)庫(kù)信息的備集群列表中查找與所述寫操作請(qǐng)求匹配的第 一備數(shù)據(jù)庫(kù)信息,根據(jù)所述第一備數(shù)據(jù)庫(kù)信息將所述寫操作請(qǐng)求發(fā)送至所述第一備數(shù)據(jù)庫(kù) 信息所對(duì)應(yīng)的第二服務(wù)器,以使所述第二服務(wù)器根據(jù)所述寫操作請(qǐng)求對(duì)所述第一備數(shù)據(jù)庫(kù) 信息所對(duì)應(yīng)的第一備數(shù)據(jù)庫(kù)進(jìn)行寫入數(shù)據(jù),這使得客戶端可分別對(duì)主數(shù)據(jù)庫(kù)和備數(shù)據(jù)庫(kù)進(jìn) 行寫操作,使得主數(shù)據(jù)庫(kù)和備數(shù)據(jù)庫(kù)之間相互獨(dú)立,有效提高備份數(shù)據(jù)庫(kù)的數(shù)據(jù)的安全性, 并且備數(shù)據(jù)庫(kù)不是直接對(duì)主數(shù)據(jù)庫(kù)進(jìn)行復(fù)制,降低對(duì)主數(shù)據(jù)庫(kù)所在服務(wù)器的運(yùn)行負(fù)擔(dān)。 [0184] 本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分流程,是可以 通過(guò)計(jì)算機(jī)程序來(lái)指令相關(guān)的硬件來(lái)完成,所述的程序可存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì) 中,該程序在執(zhí)行時(shí),可包括如上述各方法的實(shí)施例的流程。其中,所述的存儲(chǔ)介質(zhì)可為磁 碟、光盤、只讀存儲(chǔ)記憶體(Read-Only Memory,ROM)或隨機(jī)存儲(chǔ)記憶體(Random Access Memory,RAM)等。
[0185] 以上所揭露的僅為本發(fā)明較佳實(shí)施例而己,當(dāng)然不能以此來(lái)限定本發(fā)明之權(quán)利范 圍,因此依本發(fā)明權(quán)利要求所作的等同變化,仍屬本發(fā)明所涵蓋的范圍。
【權(quán)利要求】
1. 一種數(shù)據(jù)庫(kù)的數(shù)據(jù)處理方法,其特征在于,所述方法包括: 當(dāng)接收到客戶端發(fā)送的寫操作請(qǐng)求時(shí),根據(jù)所述寫操作請(qǐng)求在預(yù)置的包括至少一個(gè)主 數(shù)據(jù)庫(kù)信息的主集群列表中查找與所述寫操作請(qǐng)求匹配的第一主數(shù)據(jù)庫(kù)信息; 根據(jù)所述第一主數(shù)據(jù)庫(kù)信息將所述寫操作請(qǐng)求發(fā)送至所述第一主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng) 的第一服務(wù)器,以使所述第一服務(wù)器根據(jù)所述寫操作請(qǐng)求對(duì)所述第一主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng) 的第一主數(shù)據(jù)庫(kù)進(jìn)行寫入數(shù)據(jù); 當(dāng)接收到所述第一服務(wù)器返回的對(duì)所述第一主數(shù)據(jù)庫(kù)寫入數(shù)據(jù)成功信號(hào)時(shí),在預(yù)置的 包括至少一個(gè)備數(shù)據(jù)庫(kù)信息的備集群列表中查找與所述寫操作請(qǐng)求匹配的第一備數(shù)據(jù)庫(kù) ^[苜息; 根據(jù)所述第一備數(shù)據(jù)庫(kù)信息將所述寫操作請(qǐng)求發(fā)送至所述第一備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng) 的第二服務(wù)器,以使所述第二服務(wù)器根據(jù)所述寫操作請(qǐng)求對(duì)所述第一備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng) 的第一備數(shù)據(jù)庫(kù)進(jìn)行寫入數(shù)據(jù)。
2. 如權(quán)利要求1所述的方法,其特征在于,所述方法還包括: 當(dāng)接收到客戶端發(fā)送的讀操作請(qǐng)求時(shí),根據(jù)所述讀操作請(qǐng)求在所述主集群列表中查找 與所述讀操作指令匹配的第二主數(shù)據(jù)庫(kù)信息; 根據(jù)所述第二主數(shù)據(jù)庫(kù)信息將所述讀操作請(qǐng)求發(fā)送至所述第二主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng) 的第三服務(wù)器,以使所述第三服務(wù)器根據(jù)所述讀操作請(qǐng)求對(duì)所述第二主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng) 的第二主數(shù)據(jù)庫(kù)進(jìn)行讀取數(shù)據(jù); 接收所述第三服務(wù)器返回的所讀取的數(shù)據(jù)。
3. 如權(quán)利要求2所述的方法,其特征在于,所述接收所述第三服務(wù)器返回的所讀取的 數(shù)據(jù)之后包括: 根據(jù)所述所讀取的數(shù)據(jù)判斷所述第三服務(wù)器對(duì)所述第二主數(shù)據(jù)庫(kù)讀取數(shù)據(jù)是否成 功; 當(dāng)所述第三服務(wù)器對(duì)所述第二主數(shù)據(jù)庫(kù)讀取數(shù)據(jù)失敗時(shí),在所述備集群列表中查找與 所述讀操作指令匹配的第二備數(shù)據(jù)庫(kù)信息; 根據(jù)所述第二備數(shù)據(jù)庫(kù)信息將所述讀操作指令發(fā)送至所述第二備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng) 的第四服務(wù)器,以使所述第四服務(wù)器根據(jù)所述讀操作請(qǐng)求對(duì)所述第二備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng) 的第二備數(shù)據(jù)庫(kù)進(jìn)行讀取數(shù)據(jù); 接收所述第四服務(wù)器返回的所讀取的數(shù)據(jù)。
4. 如權(quán)利要求3所述的方法,其特征在于,在當(dāng)接收到客戶端發(fā)送的寫操作請(qǐng)求時(shí),根 據(jù)所述寫操作請(qǐng)求在預(yù)置的包括至少一個(gè)主數(shù)據(jù)庫(kù)信息的主集群列表中查找與所述寫操 作請(qǐng)求匹配的第一主數(shù)據(jù)庫(kù)信息之前包括: 預(yù)置所述主集群列表和所述備集群列表。
5. 如權(quán)利要求4所述的方法,其特征在于,所述方法還包括: 當(dāng)檢測(cè)到新增第一數(shù)據(jù)庫(kù)時(shí),在所述主集群列表中獲取任思一個(gè)弟二主數(shù)據(jù)庫(kù)fe息; 獲取所述第三主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第三主數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù),將所述第三主數(shù)據(jù) 庫(kù)所存儲(chǔ)的數(shù)據(jù)復(fù)制至所述第一數(shù)據(jù)庫(kù)上; 向所述第三主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器發(fā)送第一刪除指令,以刪除所述第三主數(shù)據(jù) 庫(kù)。
6. 如權(quán)利要求5所述的方法,其特征在于,所述方法還包括: 當(dāng)檢測(cè)到新增的第二數(shù)據(jù)庫(kù)時(shí),在所述備集群列表中任意獲取第三備數(shù)據(jù)庫(kù)信息; 獲取所述第三備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第三備數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù),將所述第三備數(shù)據(jù) 庫(kù)所存儲(chǔ)的數(shù)據(jù)復(fù)制至所述第二數(shù)據(jù)庫(kù)上; 向所述第三備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器發(fā)送第第二刪除指令,以刪除所述第三備數(shù) 據(jù)庫(kù)。
7. -種代理服務(wù)器,其特征在于,所述服務(wù)器包括: 第一查找單元,用于當(dāng)接收到客戶端發(fā)送的寫操作請(qǐng)求時(shí),根據(jù)所述寫操作請(qǐng)求在預(yù) 置的包括至少一個(gè)主數(shù)據(jù)庫(kù)信息的主集群列表中查找與所述寫操作請(qǐng)求匹配的第-主數(shù) 據(jù)庫(kù)信息; 第一發(fā)送單元,用于根據(jù)所述第一主數(shù)據(jù)庫(kù)信息將所述寫操作請(qǐng)求發(fā)送至所述第一主 數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第一服務(wù)器,以使所述第一服務(wù)器根據(jù)所述寫操作請(qǐng)求對(duì)所述第一主 數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第一主數(shù)據(jù)庫(kù)進(jìn)行寫入數(shù)據(jù); 第二查找單元,用于當(dāng)接收到所述第一服務(wù)器返回的對(duì)所述第一主數(shù)據(jù)庫(kù)寫入數(shù)據(jù)成 功信號(hào)時(shí),在預(yù)置的包括至少一個(gè)備數(shù)據(jù)庫(kù)信息的備集群列表中查找與所述寫操作請(qǐng)求匹 配的第一備數(shù)據(jù)庫(kù)信息; 第二發(fā)送單元,用于根據(jù)所述第一備數(shù)據(jù)庫(kù)信息將所述寫操作請(qǐng)求發(fā)送至所述第一備 數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第二服務(wù)器,以使所述第二服務(wù)器根據(jù)所述寫操作請(qǐng)求對(duì)所述第一備 數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第一備數(shù)據(jù)庫(kù)進(jìn)行寫入數(shù)據(jù)。
8. 如權(quán)利要求7所述服務(wù)器,其特征在于,所述服務(wù)器還包括: 第三查找單元,用于當(dāng)接收到客戶端發(fā)送的讀操作請(qǐng)求時(shí),根據(jù)所述讀操作請(qǐng)求在所 述主集群列表中查找與所述讀操作指令匹配的第二主數(shù)據(jù)庫(kù)信息; 第三發(fā)送單元,用于根據(jù)所述第二主數(shù)據(jù)庫(kù)信息將所述讀操作請(qǐng)求發(fā)送至所述第二主 數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第三服務(wù)器,以使所述第三服務(wù)器根據(jù)所述讀操作請(qǐng)求對(duì)所述第二主 數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第二主數(shù)據(jù)庫(kù)進(jìn)行讀取數(shù)據(jù); 第一接收單元,用于接收所述第三服務(wù)器返回的所讀取的數(shù)據(jù)。
9. 如權(quán)利要求8所述的服務(wù)器,其特征在于,所述服務(wù)器包括: 判斷單元,用于根據(jù)所述所讀取的數(shù)據(jù)判斷所述第三服務(wù)器對(duì)所述第二主數(shù)據(jù)庫(kù)讀取 數(shù)據(jù)是否成功; 第四查找單元,用于當(dāng)所述第三服務(wù)器對(duì)所述第二主數(shù)據(jù)庫(kù)讀取數(shù)據(jù)失敗時(shí),在所述 備集群列表中查找與所述讀操作指令匹配的第二備數(shù)據(jù)庫(kù)信息; _ 第四發(fā)送單元,用于根據(jù)所述第二備數(shù)據(jù)庫(kù)信息將所述讀操作指令發(fā)送至所述第^備 數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第四服務(wù)器,以使所述第四服務(wù)器根據(jù)所述讀操作請(qǐng)求對(duì)所述第二備 數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第二備數(shù)據(jù)庫(kù)進(jìn)行讀取數(shù)據(jù); 第二接收單元,用于接收所述第四服務(wù)器返回的所讀取的數(shù)據(jù)。
10. 如權(quán)利要求9所述的服務(wù)器,其特征在于,所述服務(wù)器包括: 預(yù)置單元,用于預(yù)置所述主集群列表和所述備集群列表。
11. 如權(quán)利要求4所述的服務(wù)器,其特征在于,所述服務(wù)器還包括: 第一獲取單元,用于當(dāng)檢測(cè)到新增第一數(shù)據(jù)庫(kù)時(shí),在所述主集群列表中獲取任意一個(gè) 第三主數(shù)據(jù)庫(kù)信息; 第一復(fù)制單元,用于獲取所述第三主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第三主數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù) 據(jù),將所述第三主數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)復(fù)制至所述第一數(shù)據(jù)庫(kù)上; 第一刪除單元,用于向所述第三主數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器發(fā)送第一刪除指令,以 刪除所述第三主數(shù)據(jù)庫(kù)。
12. 如權(quán)利要求11所述的服務(wù)器,其特征在于,所述服務(wù)器還包括: 第二獲取單元,用于當(dāng)檢測(cè)到新增的第二數(shù)據(jù)庫(kù)時(shí),在所述備集群列表中任意獲取第 三備數(shù)據(jù)庫(kù)信息; 第二復(fù)制單元,用于獲取所述第三備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的第三備數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù) 據(jù),將所述第三備數(shù)據(jù)庫(kù)所存儲(chǔ)的數(shù)據(jù)復(fù)制至所述第二數(shù)據(jù)庫(kù)上; 第二刪除單元,用于向所述第三備數(shù)據(jù)庫(kù)信息所對(duì)應(yīng)的服務(wù)器發(fā)送第第二刪除指令, 以刪除所述第三備數(shù)據(jù)庫(kù)。
13. -種數(shù)據(jù)庫(kù)的數(shù)據(jù)處理系統(tǒng),所述系統(tǒng)包括客戶端、至少一個(gè)服務(wù)器以及如權(quán)利要 求7?12所述的代理服務(wù)器。
【文檔編號(hào)】H04L12/24GK104219085SQ201410387992
【公開(kāi)日】2014年12月17日 申請(qǐng)日期:2014年8月7日 優(yōu)先權(quán)日:2014年8月7日
【發(fā)明者】孫月龍, 宋創(chuàng)業(yè), 楊大偉 申請(qǐng)人:深圳市同洲電子股份有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1