欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種云盤(pán)服務(wù)器訪(fǎng)問(wèn)遷移方法和裝置與流程

文檔序號(hào):12789627閱讀:748來(lái)源:國(guó)知局
一種云盤(pán)服務(wù)器訪(fǎng)問(wèn)遷移方法和裝置與流程

本發(fā)明涉及軟件技術(shù)領(lǐng)域,特別是涉及一種云盤(pán)服務(wù)器訪(fǎng)問(wèn)遷移方法和一種云盤(pán)服務(wù)器訪(fǎng)問(wèn)遷移裝置。



背景技術(shù):

隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,云盤(pán)已經(jīng)成為生活中必不可少的網(wǎng)絡(luò)存儲(chǔ)工具,云盤(pán)可以通過(guò)互聯(lián)網(wǎng)為企業(yè)和個(gè)人提供信息的存儲(chǔ)、讀取、下載等服務(wù)。

云盤(pán)由前端接收用戶(hù)請(qǐng)求的云盤(pán)服務(wù)器集群和存儲(chǔ)具體數(shù)據(jù)的各數(shù)據(jù)庫(kù)組成。每個(gè)數(shù)據(jù)庫(kù)對(duì)應(yīng)一個(gè)域名,用戶(hù)通過(guò)對(duì)該域名發(fā)送訪(fǎng)問(wèn)請(qǐng)求,從而可以通過(guò)云盤(pán)服務(wù)器集群對(duì)相應(yīng)數(shù)據(jù)庫(kù)進(jìn)行操作。在先技術(shù)中,為了方便部署,設(shè)置了一個(gè)云盤(pán)服務(wù)器集群,該集群中各個(gè)云盤(pán)服務(wù)器的進(jìn)程接收用戶(hù)針對(duì)某一數(shù)據(jù)庫(kù)域名的訪(fǎng)問(wèn)請(qǐng)求。但是,如果某個(gè)數(shù)據(jù)庫(kù)A出現(xiàn)異常,比如崩潰,那么該接收訪(fǎng)問(wèn)請(qǐng)求的進(jìn)程則會(huì)卡死,對(duì)于大批量用戶(hù)訪(fǎng)問(wèn)該數(shù)據(jù)庫(kù)A的時(shí)候,則云盤(pán)服務(wù)器集群的進(jìn)程會(huì)逐漸被占滿(mǎn),則最終可以導(dǎo)致該云盤(pán)云盤(pán)服務(wù)器集群的卡死,從而使得該云盤(pán)服務(wù)器集群中的云盤(pán)服務(wù)器不能為用戶(hù)提供服務(wù)。

為了解決一個(gè)數(shù)據(jù)庫(kù)崩潰使整個(gè)云盤(pán)服務(wù)器集群的卡死,在先技術(shù)中,則將一個(gè)大的云盤(pán)服務(wù)器集群在物理上拆分為了多個(gè)小的云盤(pán)服務(wù)器集群,每個(gè)云盤(pán)服務(wù)器集群管理部分?jǐn)?shù)據(jù)庫(kù)。但是該種方案部署成本高,維護(hù)成本也很高,集群擴(kuò)展很不方便,并且某個(gè)集群的數(shù)據(jù)庫(kù)卡死,在一定時(shí)間后該集群照樣會(huì)卡死。



技術(shù)實(shí)現(xiàn)要素:

鑒于上述問(wèn)題,提出了本發(fā)明以便提供一種克服上述問(wèn)題或者至少部分地解決上述問(wèn)題的云盤(pán)服務(wù)器訪(fǎng)問(wèn)遷移方法和相應(yīng)的云盤(pán)服務(wù)器訪(fǎng)問(wèn)遷移裝置。

依據(jù)本發(fā)明的一個(gè)方面,提供了一種云盤(pán)服務(wù)器訪(fǎng)問(wèn)遷移方法,包括:

由監(jiān)控服務(wù)判斷接收到的網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù);

如果所述網(wǎng)絡(luò)請(qǐng)求是針對(duì)異常的數(shù)據(jù)庫(kù),則將所述網(wǎng)絡(luò)請(qǐng)求切換給備用業(yè)務(wù)集群的第二進(jìn)程進(jìn)行處理;

如果所述網(wǎng)絡(luò)請(qǐng)求是針對(duì)正常的數(shù)據(jù)庫(kù),則將所述網(wǎng)絡(luò)請(qǐng)求發(fā)送給本地的第二進(jìn)程進(jìn)行處理。

優(yōu)選地,所述由監(jiān)控服務(wù)判斷接收到的網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù)的步驟,包括:

在由監(jiān)控服務(wù)接收到網(wǎng)絡(luò)請(qǐng)求后,讀取配置服務(wù)的值;

根據(jù)所述配置服務(wù)的值,判斷所述網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù)。

優(yōu)選地,在所述由監(jiān)控服務(wù)接收到網(wǎng)絡(luò)請(qǐng)求后,讀取配置服務(wù)的值的步驟之前,還包括:

監(jiān)控各個(gè)數(shù)據(jù)庫(kù)是否出現(xiàn)異常;

如果所述數(shù)據(jù)庫(kù)出現(xiàn)異常,則根據(jù)所述數(shù)據(jù)庫(kù)生成配置文件;

將所述配置文件加載至配置服務(wù)中,以更新所述配置服務(wù)的值。

優(yōu)選地,所述監(jiān)控各個(gè)數(shù)據(jù)庫(kù)是否出現(xiàn)異常的步驟,包括:

監(jiān)控各個(gè)數(shù)據(jù)庫(kù)是否出現(xiàn)故障;

和/或監(jiān)控各個(gè)數(shù)據(jù)庫(kù)的訪(fǎng)問(wèn)流量是否異常。

優(yōu)選地,所述根據(jù)所述數(shù)據(jù)庫(kù)生成配置文件的步驟,包括:

獲取所述數(shù)據(jù)庫(kù)對(duì)應(yīng)的域名,并根據(jù)所述域名生成配置文件。

優(yōu)選地,所述根據(jù)所述配置服務(wù)的值,判斷所述網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù)的步驟,包括:

判斷對(duì)應(yīng)網(wǎng)絡(luò)請(qǐng)求的域名與所述配置服務(wù)的值是否匹配;

如果對(duì)應(yīng)網(wǎng)絡(luò)請(qǐng)求的域名與所述配置服務(wù)的值匹配,則確定所述網(wǎng)絡(luò)請(qǐng)求是針對(duì)異常的數(shù)據(jù)庫(kù);

如果對(duì)應(yīng)網(wǎng)絡(luò)請(qǐng)求的域名與所述配置服務(wù)的值不匹配,則確定所述網(wǎng)絡(luò)請(qǐng)求不是針對(duì)異常的數(shù)據(jù)庫(kù)。

優(yōu)選地,所述監(jiān)控服務(wù)包括nginx多進(jìn)程模型服務(wù);所述第二進(jìn)程包括 PHP進(jìn)程。

優(yōu)選地,所述由監(jiān)控服務(wù)判斷接收到的網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù)的步驟,包括:

在nginx多進(jìn)程模型服務(wù)接收到一網(wǎng)絡(luò)請(qǐng)求后,通過(guò)lua腳本調(diào)用接口調(diào)用lua腳本;

通過(guò)所述lua腳本判斷所述網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù)。

優(yōu)選地,所述lua腳本調(diào)用接口包括openresty接口。

依據(jù)本發(fā)明的另一個(gè)方面,提供了一種云盤(pán)服務(wù)器訪(fǎng)問(wèn)遷移裝置,包括:

網(wǎng)絡(luò)請(qǐng)求判斷模塊,適于由監(jiān)控服務(wù)判斷接收到的網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù);

網(wǎng)絡(luò)請(qǐng)求切換模塊,適于在所述網(wǎng)絡(luò)請(qǐng)求是針對(duì)異常的數(shù)據(jù)庫(kù)時(shí),將所述網(wǎng)絡(luò)請(qǐng)求切換給備用業(yè)務(wù)集群的第二進(jìn)程進(jìn)行處理;

網(wǎng)絡(luò)請(qǐng)求發(fā)送模塊,適于所述網(wǎng)絡(luò)請(qǐng)求是針對(duì)正常的數(shù)據(jù)庫(kù)時(shí),將所述網(wǎng)絡(luò)請(qǐng)求發(fā)送給本地的第二進(jìn)程進(jìn)行處理。

優(yōu)選地,所述網(wǎng)絡(luò)請(qǐng)求判斷模塊,包括:

讀取子模塊,適于在由監(jiān)控服務(wù)接收到網(wǎng)絡(luò)請(qǐng)求后,讀取配置服務(wù)的值;

網(wǎng)絡(luò)請(qǐng)求判斷子模塊,適于根據(jù)所述配置服務(wù)的值,判斷所述網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù)。

優(yōu)選地,在所述讀取子模塊之前,還包括:

數(shù)據(jù)庫(kù)監(jiān)控子模塊,適于監(jiān)控各個(gè)數(shù)據(jù)庫(kù)是否出現(xiàn)異常;

配置文件生成子模塊,適于在所述數(shù)據(jù)庫(kù)出現(xiàn)異常時(shí),根據(jù)所述數(shù)據(jù)庫(kù)生成配置文件;

更新子模塊,適于將所述配置文件加載至配置服務(wù)中,以更新所述配置服務(wù)的值。

優(yōu)選地,所述數(shù)據(jù)庫(kù)監(jiān)控子模塊,包括:

故障數(shù)據(jù)庫(kù)監(jiān)控子模塊,適于監(jiān)控各個(gè)數(shù)據(jù)庫(kù)是否出現(xiàn)故障;和/或

各數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)流量監(jiān)控子模塊,適于監(jiān)控各個(gè)數(shù)據(jù)庫(kù)的訪(fǎng)問(wèn)流量是否異常。

優(yōu)選地,所述配置文件生成子模塊,包括:

對(duì)應(yīng)域名的配置文件生成子模塊,獲取所述數(shù)據(jù)庫(kù)對(duì)應(yīng)的域名,并根據(jù)所述域名生成配置文件。

優(yōu)選地,所述網(wǎng)絡(luò)請(qǐng)求判斷子模塊,包括:

匹配判斷子模塊,適于判斷對(duì)應(yīng)網(wǎng)絡(luò)請(qǐng)求的域名與所述配置服務(wù)的值是否匹配;

異常數(shù)據(jù)庫(kù)確定子模塊,適于在對(duì)應(yīng)網(wǎng)絡(luò)請(qǐng)求的域名與所述配置服務(wù)的值匹配時(shí),確定所述網(wǎng)絡(luò)請(qǐng)求是針對(duì)異常的數(shù)據(jù)庫(kù);

正常數(shù)據(jù)庫(kù)確定子模塊,適于在對(duì)應(yīng)網(wǎng)絡(luò)請(qǐng)求的域名與所述配置服務(wù)的值不匹配時(shí),確定所述網(wǎng)絡(luò)請(qǐng)求不是針對(duì)異常的數(shù)據(jù)庫(kù)。

優(yōu)選地,所述監(jiān)控服務(wù)包括nginx多進(jìn)程模型服務(wù);所述第二進(jìn)程包括PHP進(jìn)程。

優(yōu)選地,所述網(wǎng)絡(luò)請(qǐng)求判斷模塊,包括:

lua腳本調(diào)用子模塊,適于在nginx多進(jìn)程模型服務(wù)接收到一網(wǎng)絡(luò)請(qǐng)求后,通過(guò)lua腳本調(diào)用接口調(diào)用lua腳本;

lua腳本判斷網(wǎng)絡(luò)請(qǐng)求子模塊,適于通過(guò)所述lua腳本判斷所述網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù)。

優(yōu)選地,所述lua腳本調(diào)用接口包括openresty接口。

依據(jù)本發(fā)明的另一個(gè)方面,提供了一種云盤(pán)服務(wù)器訪(fǎng)問(wèn)遷移設(shè)備,包括:

存儲(chǔ)器,加載有多條可執(zhí)行指令;

處理器,執(zhí)行所述多條可執(zhí)行指令;所述多條指令包括執(zhí)行以下步驟的方法:

由監(jiān)控服務(wù)判斷接收到的網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù);

如果所述網(wǎng)絡(luò)請(qǐng)求是針對(duì)異常的數(shù)據(jù)庫(kù),則將所述網(wǎng)絡(luò)請(qǐng)求切換給備用業(yè)務(wù)集群的第二進(jìn)程進(jìn)行處理;

如果所述網(wǎng)絡(luò)請(qǐng)求是針對(duì)正常的數(shù)據(jù)庫(kù),則將所述網(wǎng)絡(luò)請(qǐng)求發(fā)送給本地的第二進(jìn)程進(jìn)行處理。

根據(jù)本發(fā)明的云盤(pán)服務(wù)器訪(fǎng)問(wèn)遷移方案,可以在整個(gè)云盤(pán)服務(wù)器集群中的每臺(tái)云盤(pán)服務(wù)器中,設(shè)置一個(gè)監(jiān)控服務(wù),通過(guò)監(jiān)控服務(wù)對(duì)接收到的網(wǎng)絡(luò)請(qǐng)求進(jìn)行判斷,以判斷所接收到的網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù),如果是,則將該網(wǎng)絡(luò)請(qǐng)求切換至備用業(yè)務(wù)集群的第二進(jìn)程進(jìn)行處理;否則,將網(wǎng)絡(luò)請(qǐng)求在本地的第二進(jìn)程進(jìn)行處理。由此解決了在先技術(shù)中,在云平臺(tái)上只部署一組云盤(pán)服務(wù)器集群對(duì)應(yīng)的數(shù)據(jù)庫(kù)中的某個(gè)數(shù)據(jù)庫(kù)出現(xiàn)異常時(shí),造成該云盤(pán)服務(wù)器集群中的云盤(pán)服務(wù)器不能繼續(xù)為用戶(hù)提供服務(wù)的問(wèn)題,取得了在云盤(pán)服務(wù)器集群的數(shù)據(jù)庫(kù)出現(xiàn)問(wèn)題時(shí),避免該云盤(pán)服務(wù)器集群卡死,便于在只部署一個(gè)云盤(pán)服務(wù)器集群的情況下,可以降低對(duì)云盤(pán)服務(wù)器的性能的影響,便于維護(hù)和擴(kuò)展的有益效果。

上述說(shuō)明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段,而可依照說(shuō)明書(shū)的內(nèi)容予以實(shí)施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點(diǎn)能夠更明顯易懂,以下特舉本發(fā)明的具體實(shí)施方式。

附圖說(shuō)明

通過(guò)閱讀下文優(yōu)選實(shí)施方式的詳細(xì)描述,各種其他的優(yōu)點(diǎn)和益處對(duì)于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實(shí)施方式的目的,而并不認(rèn)為是對(duì)本發(fā)明的限制。而且在整個(gè)附圖中,用相同的參考符號(hào)表示相同的部件。在附圖中:

圖1示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的云盤(pán)服務(wù)器訪(fǎng)問(wèn)遷移方法的步驟流程圖;

圖2示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的云盤(pán)服務(wù)器訪(fǎng)問(wèn)遷移方法的步驟流程圖;

圖3示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的云盤(pán)服務(wù)器訪(fǎng)問(wèn)遷移裝置的結(jié)構(gòu)框圖;

圖3A示出了基于圖3的云盤(pán)服務(wù)器訪(fǎng)問(wèn)遷移系統(tǒng)示例;

圖4示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的云盤(pán)服務(wù)器訪(fǎng)問(wèn)遷移裝置的結(jié)構(gòu)框圖;以及

圖5示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的云盤(pán)服務(wù)器訪(fǎng)問(wèn)遷移設(shè)備的結(jié)構(gòu)框 圖。

具體實(shí)施方式

下面將參照附圖更詳細(xì)地描述本公開(kāi)的示例性實(shí)施例。雖然附圖中顯示了本公開(kāi)的示例性實(shí)施例,然而應(yīng)當(dāng)理解,可以以各種形式實(shí)現(xiàn)本公開(kāi)而不應(yīng)被這里闡述的實(shí)施例所限制。相反,提供這些實(shí)施例是為了能夠更透徹地理解本公開(kāi),并且能夠?qū)⒈竟_(kāi)的范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。

實(shí)施例一

參照?qǐng)D1,示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的一種云盤(pán)服務(wù)器訪(fǎng)問(wèn)遷移方法的步驟流程圖,具體可以包括如下步驟:

步驟S110:由監(jiān)控服務(wù)判斷接收到的網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù);如果所述網(wǎng)絡(luò)請(qǐng)求是針對(duì)異常的數(shù)據(jù)庫(kù),則執(zhí)行步驟S120;否則執(zhí)行步驟S130。

本發(fā)明實(shí)施例可以應(yīng)用于在云平臺(tái)上部署一組云盤(pán)服務(wù)器集群,且該云盤(pán)服務(wù)器集群對(duì)應(yīng)多個(gè)數(shù)據(jù)庫(kù)的情況下,將對(duì)應(yīng)于該云盤(pán)服務(wù)器集群中的異常數(shù)據(jù)庫(kù)的網(wǎng)絡(luò)請(qǐng)求進(jìn)行遷移。當(dāng)然,如果部署多組云盤(pán)服務(wù)器集群,本發(fā)明實(shí)施例也可以使用,本發(fā)明實(shí)施例不對(duì)其加以限制。

在實(shí)際應(yīng)用中,云盤(pán)服務(wù)器集群可以對(duì)應(yīng)有多個(gè)域名,每個(gè)域名都對(duì)應(yīng)于一個(gè)數(shù)據(jù)庫(kù),用戶(hù)訪(fǎng)問(wèn)該云盤(pán)服務(wù)器集群的域名時(shí),通過(guò)對(duì)用戶(hù)的網(wǎng)絡(luò)請(qǐng)求進(jìn)行解析,然后可以在所對(duì)應(yīng)的數(shù)據(jù)庫(kù)中執(zhí)行相應(yīng)的數(shù)據(jù)操作。例如,一組云盤(pán)服務(wù)器集群S有3個(gè)域名A、B、C,其所對(duì)應(yīng)的數(shù)據(jù)庫(kù)分別為DB-1、DB-2、DB-3。在先技術(shù)中,當(dāng)用戶(hù)使用客戶(hù)端訪(fǎng)問(wèn)該云盤(pán)服務(wù)器集群中的域名A在云盤(pán)上傳數(shù)據(jù)時(shí),則該云盤(pán)服務(wù)器集群的PHP進(jìn)程接收客戶(hù)端發(fā)送的網(wǎng)絡(luò)請(qǐng)求,并依據(jù)相應(yīng)的程序?qū)υ摼W(wǎng)絡(luò)請(qǐng)求進(jìn)行解析,并在域名A對(duì)應(yīng)的數(shù)據(jù)庫(kù)DB-1中添加相應(yīng)的數(shù)據(jù)。該P(yáng)HP進(jìn)程執(zhí)行對(duì)文件的打開(kāi)/關(guān)閉、上傳/下載等業(yè)務(wù)邏輯。

在本發(fā)明實(shí)施例中,對(duì)于云盤(pán)服務(wù)器集群中的每條云盤(pán)服務(wù)器,為該云盤(pán)服務(wù)器設(shè)置一個(gè)監(jiān)控服務(wù),該監(jiān)控服務(wù)接收用戶(hù)發(fā)送的網(wǎng)絡(luò)請(qǐng)求,然后進(jìn) 入步驟S120。

在本發(fā)明實(shí)施例中還可以設(shè)置相應(yīng)的數(shù)據(jù)庫(kù)監(jiān)測(cè)進(jìn)程,以對(duì)數(shù)據(jù)庫(kù)是否異常進(jìn)行監(jiān)測(cè),常用的監(jiān)測(cè)方法可以包括如下步驟:

步驟S1:利用活動(dòng)會(huì)話(huà)歷史接口從數(shù)據(jù)庫(kù)中獲取運(yùn)行狀態(tài)信息;

步驟S2:將預(yù)定時(shí)間段內(nèi)的運(yùn)行狀態(tài)信息與該數(shù)據(jù)庫(kù)的歷史運(yùn)行狀態(tài)信息進(jìn)行比較,以確定數(shù)據(jù)庫(kù)的運(yùn)行狀態(tài)趨勢(shì);

步驟S3:依據(jù)數(shù)據(jù)庫(kù)的運(yùn)行狀態(tài)趨勢(shì)評(píng)估數(shù)據(jù)庫(kù)是否存在異常;數(shù)據(jù)庫(kù)的運(yùn)行狀態(tài)趨勢(shì)可以包括:根據(jù)核心子指標(biāo)進(jìn)行評(píng)估的運(yùn)行狀態(tài)趨勢(shì);根據(jù)綜合性能指標(biāo)進(jìn)行評(píng)估的運(yùn)行狀態(tài)趨勢(shì)等等。

可以理解地,上述監(jiān)測(cè)方法是為了能夠更好地理解本發(fā)明的技術(shù)方案而列舉的一種案例,不能以此作為對(duì)本發(fā)明的一種限制。

通過(guò)對(duì)數(shù)據(jù)庫(kù)是否異常進(jìn)行監(jiān)測(cè),當(dāng)檢測(cè)到云盤(pán)服務(wù)器集群對(duì)應(yīng)的數(shù)據(jù)庫(kù)中存在異常數(shù)據(jù)庫(kù)時(shí),可以對(duì)異常數(shù)據(jù)庫(kù)進(jìn)行標(biāo)記和記錄,進(jìn)而在接收到對(duì)應(yīng)于用戶(hù)發(fā)送的網(wǎng)絡(luò)請(qǐng)求之后,可以依據(jù)云平臺(tái)提供的監(jiān)控服務(wù)對(duì)該網(wǎng)絡(luò)請(qǐng)求進(jìn)行判斷,以確定該網(wǎng)絡(luò)請(qǐng)求是否為針對(duì)異常的數(shù)據(jù)庫(kù)。如果該網(wǎng)絡(luò)請(qǐng)求針對(duì)的是異常的數(shù)據(jù)庫(kù),則進(jìn)入步驟S120;如果該網(wǎng)絡(luò)請(qǐng)求針對(duì)的是正常的數(shù)據(jù),則進(jìn)入步驟S130。

在本發(fā)明實(shí)施例中,數(shù)據(jù)庫(kù)的異常包括:數(shù)據(jù)庫(kù)崩潰等無(wú)法提供服務(wù)的異常;數(shù)據(jù)庫(kù)在指定時(shí)間段內(nèi)收到的連接數(shù)量大于閾值,也可以理解為云盤(pán)服務(wù)器收到連接攻擊,而該連接攻擊針對(duì)上述數(shù)據(jù)庫(kù)。

在實(shí)際應(yīng)用中,監(jiān)控服務(wù)接收到客戶(hù)端發(fā)送的網(wǎng)絡(luò)請(qǐng)求后,會(huì)從網(wǎng)絡(luò)請(qǐng)求中解析該網(wǎng)絡(luò)請(qǐng)求對(duì)應(yīng)的域名,然后根據(jù)域名確定其對(duì)應(yīng)的數(shù)據(jù)庫(kù),然后判斷該數(shù)據(jù)庫(kù)是否異常。如果異常則進(jìn)入步驟S120;如果正常,則進(jìn)入步驟S130。

優(yōu)選的,所述監(jiān)控服務(wù)包括nginx多進(jìn)程模型服務(wù)。

監(jiān)控服務(wù)可以包括nginx多進(jìn)程模型服務(wù),nginx是一種輕量級(jí)的代理云盤(pán)服務(wù)器,其所占有內(nèi)存比較少,并發(fā)能力較強(qiáng),進(jìn)而可以減少對(duì)系統(tǒng)內(nèi)存的占用的同時(shí),能夠同時(shí)加載較多的對(duì)應(yīng)于網(wǎng)絡(luò)請(qǐng)求的業(yè)務(wù)。Nginx啟動(dòng) 后以后臺(tái)進(jìn)程的方式在后臺(tái)運(yùn)行,后臺(tái)進(jìn)程包含一個(gè)master進(jìn)程和多個(gè)worker進(jìn)程。當(dāng)接收到客戶(hù)端的連接后,master進(jìn)程選擇已有的worker進(jìn)程接收該連接,并通過(guò)該連接接收該客戶(hù)端的網(wǎng)絡(luò)請(qǐng)求;如果沒(méi)有現(xiàn)存的worker,master進(jìn)程則創(chuàng)建一個(gè)worker進(jìn)程接收該連接,并通過(guò)該連接接收該客戶(hù)端的網(wǎng)絡(luò)請(qǐng)求

在本發(fā)明實(shí)施例中,Nginx多進(jìn)程模型服務(wù)并不執(zhí)行對(duì)應(yīng)于網(wǎng)絡(luò)請(qǐng)求的具體業(yè)務(wù)處理,而是作為一種網(wǎng)絡(luò)請(qǐng)求的轉(zhuǎn)發(fā)者,nginx多進(jìn)程模型服務(wù)接收由客戶(hù)端發(fā)送的網(wǎng)絡(luò)請(qǐng)求,然后對(duì)該網(wǎng)絡(luò)請(qǐng)求進(jìn)行是否針對(duì)異常的數(shù)據(jù)庫(kù)的判斷,根據(jù)判斷結(jié)果將決定將該網(wǎng)絡(luò)請(qǐng)求轉(zhuǎn)發(fā)至備用業(yè)務(wù)集群的第二進(jìn)程,還是轉(zhuǎn)發(fā)至本集群的第二進(jìn)程進(jìn)行處理。該第二進(jìn)程執(zhí)行具體的業(yè)務(wù)邏輯。

在nginx多進(jìn)程模型服務(wù)中可以預(yù)先設(shè)置云盤(pán)服務(wù)器集群的多個(gè)域名與云盤(pán)服務(wù)器集群對(duì)應(yīng)的數(shù)據(jù)庫(kù)的對(duì)應(yīng)關(guān)系,從而可以根據(jù)網(wǎng)絡(luò)請(qǐng)求判斷該網(wǎng)絡(luò)請(qǐng)求對(duì)應(yīng)哪個(gè)數(shù)據(jù)庫(kù)。

在本發(fā)明實(shí)施例中,可以為監(jiān)控服務(wù)配置本地第二進(jìn)程的IP地址和備用業(yè)務(wù)集群的IP地址。如果判斷接收到的網(wǎng)絡(luò)請(qǐng)求是針對(duì)異常的數(shù)據(jù)庫(kù),則根據(jù)配置的備用業(yè)務(wù)集群的IP地址,將該網(wǎng)絡(luò)請(qǐng)求轉(zhuǎn)發(fā)給備用業(yè)務(wù)集群。如果判斷接收到的網(wǎng)絡(luò)請(qǐng)求是針對(duì)異常的數(shù)據(jù)庫(kù),則根據(jù)配置的備用業(yè)務(wù)集群的IP地址,將該網(wǎng)絡(luò)請(qǐng)求轉(zhuǎn)發(fā)本地的第二進(jìn)程。

步驟S120:將所述網(wǎng)絡(luò)請(qǐng)求切換給備用業(yè)務(wù)集群的第二進(jìn)程進(jìn)行處理。

在本發(fā)明實(shí)施例中,在部署直接面對(duì)客戶(hù)端的云盤(pán)服務(wù)器集群之后,相應(yīng)還配置了一個(gè)備用業(yè)務(wù)集群。

在云盤(pán)服務(wù)器集群中的每臺(tái)云盤(pán)服務(wù)器中,按先后順序部署了用于判斷接收到的網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù)的監(jiān)控服務(wù)和用于處理具體業(yè)務(wù)邏輯的第二進(jìn)程。該業(yè)務(wù)邏輯比如打開(kāi)/關(guān)閉文件、上傳/下載數(shù)據(jù)、新建/刪除文件等業(yè)務(wù)操作邏輯。

在備用業(yè)務(wù)集群中的每臺(tái)云盤(pán)服務(wù)器中,只配置了前述的第二進(jìn)程。備用業(yè)務(wù)集群與相應(yīng)云盤(pán)服務(wù)器集群都配置了相同的數(shù)據(jù)庫(kù)。

在本發(fā)明實(shí)施例中,可以創(chuàng)建與云盤(pán)服務(wù)器集群對(duì)應(yīng)的備用業(yè)務(wù)集群,該備用業(yè)務(wù)集群也有其所對(duì)應(yīng)的數(shù)據(jù)庫(kù),云盤(pán)服務(wù)器集群的云盤(pán)服務(wù)器,由其監(jiān)控服務(wù)接收到網(wǎng)絡(luò)請(qǐng)求后,判斷該網(wǎng)絡(luò)請(qǐng)求針對(duì)的數(shù)據(jù)庫(kù)發(fā)生異常時(shí),則將該網(wǎng)絡(luò)請(qǐng)求轉(zhuǎn)發(fā)給云盤(pán)服務(wù)器集群對(duì)應(yīng)的備用業(yè)務(wù)集群的某臺(tái)云盤(pán)服務(wù)器,由該云盤(pán)服務(wù)器的第二進(jìn)程進(jìn)行處理,那么該異常的數(shù)據(jù)庫(kù)對(duì)本發(fā)明的云盤(pán)服務(wù)器集群的進(jìn)程就不會(huì)產(chǎn)生卡死現(xiàn)象,因?yàn)楫惓5臄?shù)據(jù)庫(kù)的網(wǎng)絡(luò)請(qǐng)求不由該云盤(pán)服務(wù)器集群處理。

優(yōu)選地,所述第二進(jìn)程包括PHP進(jìn)程。

本發(fā)明實(shí)施例中,備用業(yè)務(wù)集群的各臺(tái)云盤(pán)服務(wù)器中設(shè)置的第二進(jìn)程可以包括PHP(Hypertext Preprocessor,超文本預(yù)處理語(yǔ)言)進(jìn)程,PHP是免費(fèi)且開(kāi)源的代碼,使用PHP可以達(dá)到程序開(kāi)發(fā)速度比較快、運(yùn)行速度快等優(yōu)點(diǎn),因而,在本發(fā)明實(shí)施例中使用PHP進(jìn)程作為備用業(yè)務(wù)集群的第二進(jìn)程可以在節(jié)省研發(fā)費(fèi)用的同時(shí),提高研發(fā)速度。但是PHP進(jìn)程并發(fā)數(shù)量少,如果數(shù)據(jù)庫(kù)出現(xiàn)異常,則很容易出現(xiàn)PHP進(jìn)程占滿(mǎn),從而使整個(gè)集群的PHP進(jìn)程占滿(mǎn),導(dǎo)致集群卡死的問(wèn)題。

本發(fā)明實(shí)施例中可以采用PHP多進(jìn)程的處理方式執(zhí)行對(duì)應(yīng)于網(wǎng)絡(luò)請(qǐng)求業(yè)務(wù)處理,可以達(dá)到同時(shí)執(zhí)行較多的網(wǎng)絡(luò)請(qǐng)求,提高了網(wǎng)絡(luò)請(qǐng)求對(duì)應(yīng)的業(yè)務(wù)處理的效率。PHP多進(jìn)程可以包括一個(gè)PHP主進(jìn)程和較多個(gè)PHP子進(jìn)程,由PHP主進(jìn)程用于接收nginx多進(jìn)程模型服務(wù)轉(zhuǎn)發(fā)的網(wǎng)絡(luò)請(qǐng)求,并將這些網(wǎng)絡(luò)請(qǐng)求分別發(fā)送至各個(gè)PHP子進(jìn)程中以執(zhí)行具體的業(yè)務(wù)處理。

優(yōu)選地,所述步驟S120可以包括:

子步驟S1202:在nginx多進(jìn)程模型服務(wù)接收到一網(wǎng)絡(luò)請(qǐng)求后,通過(guò)lua腳本調(diào)用接口調(diào)用lua腳本;

子步驟S1204:通過(guò)所述lua腳本判斷所述網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù)。

本發(fā)明實(shí)施例中,lua是一種輕量、可擴(kuò)展的腳本語(yǔ)言,可以嵌入應(yīng)用程序中,能夠?yàn)閼?yīng)用程序提供靈活的擴(kuò)展和定制功能,并且lua語(yǔ)言體積較小、啟動(dòng)速度比較快,因而,使用lua語(yǔ)言可以加快系統(tǒng)的運(yùn)行速度。

在本發(fā)明實(shí)施例中,可以將lua腳本語(yǔ)言嵌入到nginx多進(jìn)程模型服務(wù)中,在nginx多進(jìn)程模型服務(wù)接收到一個(gè)網(wǎng)絡(luò)請(qǐng)求之后,可以通過(guò)lua腳本調(diào)用接口調(diào)用lua腳本,lua腳本可以用于對(duì)網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù)進(jìn)行判斷。

相應(yīng)的,lua腳本調(diào)用接口可以包括openresty接口,openresty是一種全功能的web應(yīng)用云盤(pán)服務(wù)器,它打包了標(biāo)準(zhǔn)的Nginx核心,很多的常用的第三方模塊,以及它們的大多數(shù)依賴(lài)項(xiàng),本發(fā)明則在nginx多進(jìn)程模型服務(wù)中添加openresty接口,則nginx多進(jìn)程模型服務(wù)在對(duì)網(wǎng)絡(luò)請(qǐng)求的解析的過(guò)程中調(diào)用該openresty接口,從而可以調(diào)用lua腳本,實(shí)現(xiàn)判斷網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù)的過(guò)程。通過(guò)該種方式降低了程序設(shè)計(jì)的復(fù)雜度。

步驟S130:將所述網(wǎng)絡(luò)請(qǐng)求發(fā)送給本地的第二進(jìn)程進(jìn)行處理。

在接收到的網(wǎng)絡(luò)請(qǐng)求是針對(duì)正常的數(shù)據(jù)庫(kù)時(shí),則監(jiān)控服務(wù)將該網(wǎng)絡(luò)請(qǐng)求轉(zhuǎn)發(fā)至本地的第二進(jìn)程進(jìn)行處理,比如按照本地的IP地址如127.0.0.1,監(jiān)控服務(wù)以該IP地址轉(zhuǎn)發(fā)網(wǎng)絡(luò)請(qǐng)求給該IP地址,從而本地的第二進(jìn)程可以接收到該網(wǎng)絡(luò)請(qǐng)求,然后根據(jù)該網(wǎng)絡(luò)請(qǐng)求執(zhí)行具體的業(yè)務(wù)邏輯,比如在相應(yīng)的數(shù)據(jù)庫(kù)中進(jìn)行數(shù)據(jù)的添加、刪除等操作。

本發(fā)明實(shí)施例通過(guò)監(jiān)控服務(wù)對(duì)接收到的對(duì)應(yīng)于部署的一組云盤(pán)服務(wù)器集群的網(wǎng)絡(luò)請(qǐng)求進(jìn)行判斷,以判斷所接收到的網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù),如果是,則將該網(wǎng)絡(luò)請(qǐng)求切換至備用業(yè)務(wù)集群的第二進(jìn)程進(jìn)行處理;否則,將網(wǎng)絡(luò)請(qǐng)求在本地的第二進(jìn)程進(jìn)行處理。進(jìn)而可以在保證該組云盤(pán)服務(wù)器集群為用戶(hù)提供正常服務(wù)的同時(shí),取得了在云盤(pán)服務(wù)器集群的數(shù)據(jù)庫(kù)出現(xiàn)問(wèn)題時(shí),避免該云盤(pán)服務(wù)器集群卡死,便于在只部署一個(gè)云盤(pán)服務(wù)器集群的情況下,可以降低對(duì)云盤(pán)服務(wù)器的性能的影響,便于維護(hù)和擴(kuò)展的有益效果。

實(shí)施例二

參照?qǐng)D2,示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的一種云盤(pán)服務(wù)器訪(fǎng)問(wèn)遷移方法的步驟流程圖,具體可以包括如下步驟:

步驟S210:監(jiān)控各個(gè)數(shù)據(jù)庫(kù)是否出現(xiàn)異常。

本發(fā)明實(shí)施例中,可以設(shè)置相應(yīng)的監(jiān)控進(jìn)程等等方式,對(duì)云盤(pán)服務(wù)器集群對(duì)應(yīng)的各數(shù)據(jù)庫(kù)進(jìn)行監(jiān)測(cè),以監(jiān)測(cè)各數(shù)據(jù)庫(kù)是否出現(xiàn)異常。相應(yīng)的,對(duì)于常用的數(shù)據(jù)庫(kù)異常監(jiān)測(cè)的方法已經(jīng)在實(shí)施例一中進(jìn)行了詳細(xì)的描述,在此不再加以贅述。

優(yōu)選地,所述步驟S210可以包括:

子步驟S2102:監(jiān)控各個(gè)數(shù)據(jù)庫(kù)是否出現(xiàn)故障;和/或監(jiān)控各個(gè)數(shù)據(jù)庫(kù)的訪(fǎng)問(wèn)流量是否異常。

本發(fā)明實(shí)施例中,數(shù)據(jù)庫(kù)異??梢园ǎ簲?shù)據(jù)庫(kù)故障;數(shù)據(jù)庫(kù)故障可以包括:事務(wù)內(nèi)部的故障、系統(tǒng)故障、介質(zhì)故障、以及計(jì)算機(jī)病毒等等。在監(jiān)控到某個(gè)數(shù)據(jù)庫(kù)出現(xiàn)上述故障中的一種或者多種時(shí),則可以確定該數(shù)據(jù)庫(kù)出現(xiàn)了故障,也即該數(shù)據(jù)庫(kù)出現(xiàn)異常。

數(shù)據(jù)庫(kù)異常還可以包括:數(shù)據(jù)庫(kù)的訪(fǎng)問(wèn)流量發(fā)生異常,例如,數(shù)據(jù)庫(kù)的訪(fǎng)問(wèn)流量超出數(shù)據(jù)庫(kù)容量,在監(jiān)控到某個(gè)數(shù)據(jù)庫(kù)出現(xiàn)數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)流量發(fā)生異常時(shí),比如訪(fǎng)問(wèn)該數(shù)據(jù)庫(kù)的網(wǎng)絡(luò)請(qǐng)求每秒的數(shù)量大于閾值,則可以確定該數(shù)據(jù)庫(kù)出現(xiàn)了異常。

在監(jiān)控到某個(gè)數(shù)據(jù)庫(kù)出現(xiàn)故障,或數(shù)據(jù)庫(kù)的訪(fǎng)問(wèn)流量異常時(shí),則可以確定該數(shù)據(jù)庫(kù)出現(xiàn)異常。

步驟S220:如果所述數(shù)據(jù)庫(kù)出現(xiàn)異常,則根據(jù)所述數(shù)據(jù)庫(kù)生成配置文件。

本發(fā)明實(shí)施例中,在監(jiān)控到云盤(pán)服務(wù)器集群對(duì)應(yīng)的數(shù)據(jù)庫(kù)中某個(gè)數(shù)據(jù)庫(kù)出現(xiàn)異常時(shí),可以依據(jù)異常數(shù)據(jù)庫(kù)生成對(duì)應(yīng)于異常數(shù)據(jù)庫(kù)的配置文件。對(duì)應(yīng)于不同的異常數(shù)據(jù)庫(kù),可以生成相應(yīng)的不同的配置文件。當(dāng)然,也可以針對(duì)各異常的數(shù)據(jù)庫(kù)生成一個(gè)配置文件。該配置文件用于指示哪個(gè)數(shù)據(jù)庫(kù)異常,比如包括數(shù)據(jù)庫(kù)名和對(duì)應(yīng)的域名。

在本發(fā)明實(shí)施例中,可以先設(shè)置一個(gè)配置服務(wù),將所述配置文件加載到配置服務(wù)中。

優(yōu)選地,所述步驟S220可以包括:

子步驟S2202:獲取所述數(shù)據(jù)庫(kù)對(duì)應(yīng)的域名,并根據(jù)所述域名生成配置 文件。

本發(fā)明實(shí)施例中,可以通過(guò)獲取異常數(shù)據(jù)庫(kù)對(duì)應(yīng)的域名以根據(jù)該域名生成對(duì)應(yīng)于各異常數(shù)據(jù)庫(kù)的配置文件,進(jìn)而,在獲取到該數(shù)據(jù)庫(kù)的配置文件時(shí),則可以確定該數(shù)據(jù)庫(kù)是否出現(xiàn)異常。

可以理解地,本發(fā)明實(shí)施例中還可以通過(guò)獲取異常數(shù)據(jù)庫(kù)的IP地址、數(shù)據(jù)庫(kù)名、服務(wù)名等,并根據(jù)其中的一種或者多種生成對(duì)應(yīng)于異常數(shù)據(jù)庫(kù)的配置文件。在實(shí)際應(yīng)用中,本領(lǐng)域技術(shù)人員可以根據(jù)實(shí)際需要自行選擇異常數(shù)據(jù)庫(kù)的上述特征以作為生成對(duì)應(yīng)于異常數(shù)據(jù)庫(kù)的配置文件的標(biāo)識(shí),本發(fā)明實(shí)施例對(duì)此不加以限制。

步驟S230:將所述配置文件加載至配置服務(wù)中,以更新所述配置服務(wù)的值。

本發(fā)明實(shí)施例中,在云平臺(tái)下可以包括有云盤(pán)服務(wù)器集群對(duì)應(yīng)的數(shù)據(jù)庫(kù)的配置服務(wù),該配置服務(wù)中可以預(yù)先設(shè)定對(duì)應(yīng)于各個(gè)數(shù)據(jù)庫(kù)是否異常的值,另外的,正常數(shù)據(jù)庫(kù)在配置服務(wù)中的值可以默認(rèn)為空值,則,對(duì)于異常云盤(pán)服務(wù)器而言,可以在配置服務(wù)中設(shè)定異常數(shù)據(jù)庫(kù)的值為1。

在實(shí)際應(yīng)用中,本領(lǐng)域技術(shù)人員可以根據(jù)實(shí)際需要在配置服務(wù)中自行設(shè)置正常數(shù)據(jù)庫(kù)和異常數(shù)據(jù)庫(kù)的值,本發(fā)明實(shí)施例對(duì)此不加以限制。

步驟S240:在由監(jiān)控服務(wù)接收到網(wǎng)絡(luò)請(qǐng)求后,讀取配置服務(wù)的值。

本發(fā)明實(shí)施例中,在監(jiān)控服務(wù)接收到用戶(hù)發(fā)送的網(wǎng)絡(luò)請(qǐng)求之后,可以根據(jù)該網(wǎng)絡(luò)請(qǐng)求針對(duì)的數(shù)據(jù)庫(kù),從云盤(pán)服務(wù)器集群的配置服務(wù)中讀取對(duì)應(yīng)于該數(shù)據(jù)庫(kù)的值。

步驟S250:根據(jù)所述配置服務(wù)的值,判斷所述網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù);如果所述網(wǎng)絡(luò)請(qǐng)求是針對(duì)異常的數(shù)據(jù)庫(kù),則執(zhí)行步驟S260;否則,執(zhí)行步驟S270。

在讀取到對(duì)應(yīng)于網(wǎng)絡(luò)請(qǐng)求的數(shù)據(jù)庫(kù)在配置服務(wù)中的值后,可以根據(jù)該數(shù)據(jù)庫(kù)在配置服務(wù)的值,以判斷該網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù)。例如,當(dāng)讀取的對(duì)應(yīng)于網(wǎng)絡(luò)請(qǐng)求的數(shù)據(jù)庫(kù)的配置服務(wù)的值為空值時(shí),則可以確定該網(wǎng)絡(luò)請(qǐng)求對(duì)應(yīng)的數(shù)據(jù)庫(kù)為正常數(shù)據(jù)庫(kù),在讀取的對(duì)應(yīng)于網(wǎng)絡(luò)請(qǐng)求的數(shù)據(jù)庫(kù)的配 置服務(wù)的值為非空值時(shí),則可以確定該網(wǎng)絡(luò)請(qǐng)求對(duì)應(yīng)的數(shù)據(jù)庫(kù)為異常數(shù)據(jù)庫(kù)。

當(dāng)網(wǎng)絡(luò)請(qǐng)求是針對(duì)異常的數(shù)據(jù)庫(kù)時(shí),則執(zhí)行步驟S260;否則,執(zhí)行步驟S270。

優(yōu)選地,所述步驟S250可以包括:

子步驟S2502:判斷對(duì)應(yīng)網(wǎng)絡(luò)請(qǐng)求的域名與所述配置服務(wù)的值是否匹配;如果對(duì)應(yīng)網(wǎng)絡(luò)請(qǐng)求的域名與所述配置服務(wù)的值匹配,則執(zhí)行子步驟S2504;否則執(zhí)行子步驟S2506。

本發(fā)明實(shí)施例中,由于在配置服務(wù)的值是對(duì)應(yīng)于數(shù)據(jù)庫(kù)域名的,因而在讀取到配置服務(wù)的值之后,可以將該網(wǎng)絡(luò)請(qǐng)求的域名與配置服務(wù)的值對(duì)應(yīng)的數(shù)據(jù)庫(kù)的域名進(jìn)行比較,以判斷該網(wǎng)絡(luò)請(qǐng)求的域名與配置服務(wù)的值是否匹配,如果匹配,則執(zhí)行子步驟S2504;否則,執(zhí)行子步驟S2506。

子步驟S2504:確定所述網(wǎng)絡(luò)請(qǐng)求是針對(duì)異常的數(shù)據(jù)庫(kù)。

子步驟S2506:則確定所述網(wǎng)絡(luò)請(qǐng)求不是針對(duì)異常的數(shù)據(jù)庫(kù)。

在網(wǎng)絡(luò)請(qǐng)求的域名與配置服務(wù)的值匹配時(shí),則可以確定該網(wǎng)絡(luò)請(qǐng)求是針對(duì)異常的數(shù)據(jù)庫(kù),否則,該網(wǎng)絡(luò)請(qǐng)求不是針對(duì)異常的數(shù)據(jù)庫(kù),即針對(duì)正常的數(shù)據(jù)庫(kù)。

步驟S260:將所述網(wǎng)絡(luò)請(qǐng)求切換給備用業(yè)務(wù)集群的第二進(jìn)程進(jìn)行處理。

本發(fā)明實(shí)施例中,當(dāng)用戶(hù)發(fā)送的網(wǎng)絡(luò)請(qǐng)求是針對(duì)異常的數(shù)據(jù)庫(kù)時(shí),則將該網(wǎng)絡(luò)請(qǐng)求發(fā)送至備用業(yè)務(wù)集群的第二進(jìn)程進(jìn)行處理,并在網(wǎng)絡(luò)請(qǐng)求對(duì)應(yīng)的數(shù)據(jù)庫(kù)中執(zhí)行相應(yīng)的數(shù)據(jù)操作。

步驟S270:將所述網(wǎng)絡(luò)請(qǐng)求發(fā)送給本地的第二進(jìn)程進(jìn)行處理。

本發(fā)明實(shí)施例中,當(dāng)用戶(hù)發(fā)送的網(wǎng)絡(luò)請(qǐng)求是針對(duì)正常的數(shù)據(jù)庫(kù)時(shí),則將該網(wǎng)絡(luò)請(qǐng)求發(fā)送至云盤(pán)服務(wù)器集群的第二進(jìn)程進(jìn)行處理,并在網(wǎng)絡(luò)請(qǐng)求對(duì)應(yīng)數(shù)據(jù)庫(kù)中執(zhí)行相應(yīng)的數(shù)據(jù)操作。

本發(fā)明實(shí)施例通過(guò)監(jiān)控到數(shù)據(jù)庫(kù)出現(xiàn)異常時(shí),生成對(duì)應(yīng)于數(shù)據(jù)庫(kù)的配置文件,并將該配置文件加載至配置服務(wù)中,并通過(guò)監(jiān)控服務(wù)在接收到網(wǎng)絡(luò)請(qǐng)求之后,根據(jù)配置云盤(pán)服務(wù)器的值,以判斷該網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常數(shù)據(jù)庫(kù), 如果是,則將該網(wǎng)絡(luò)請(qǐng)求切換至備用業(yè)務(wù)集群的第二進(jìn)程進(jìn)行處理;否則,將網(wǎng)絡(luò)請(qǐng)求在本地的第二進(jìn)程進(jìn)行處理。進(jìn)而可以在保證該組云盤(pán)服務(wù)器集群為用戶(hù)提供正常服務(wù)的同時(shí),取得了節(jié)省了研發(fā)費(fèi)用,降低了維護(hù)難度的有益效果。

對(duì)于方法實(shí)施例,為了簡(jiǎn)單描述,故將其都表述為一系列的動(dòng)作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明實(shí)施例并不受所描述的動(dòng)作順序的限制,因?yàn)橐罁?jù)本發(fā)明實(shí)施例,某些步驟可以采用其他順序或者同時(shí)進(jìn)行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說(shuō)明書(shū)中所描述的實(shí)施例均屬于優(yōu)選實(shí)施例,所涉及的動(dòng)作并不一定是本發(fā)明實(shí)施例所必須的。

實(shí)施例三

參照?qǐng)D3,示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的一種云盤(pán)服務(wù)器訪(fǎng)問(wèn)遷移裝置的結(jié)構(gòu)框圖,具體可以包括如下模塊:

網(wǎng)絡(luò)請(qǐng)求判斷模塊310,適于由監(jiān)控服務(wù)判斷接收到的網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù);

網(wǎng)絡(luò)請(qǐng)求切換模塊320,適于在所述網(wǎng)絡(luò)請(qǐng)求是針對(duì)異常的數(shù)據(jù)庫(kù)時(shí),將所述網(wǎng)絡(luò)請(qǐng)求切換給備用業(yè)務(wù)集群的第二進(jìn)程進(jìn)行處理;

優(yōu)選地,所述監(jiān)控服務(wù)可以包括nginx多進(jìn)程模型服務(wù);所述第二進(jìn)程包括PHP進(jìn)程。

優(yōu)選地,所述網(wǎng)絡(luò)請(qǐng)求判斷模塊310,可以包括:

lua腳本調(diào)用子模塊3102,適于在nginx多進(jìn)程模型服務(wù)接收到一網(wǎng)絡(luò)請(qǐng)求后,通過(guò)lua腳本調(diào)用接口調(diào)用lua腳本;

lua腳本判斷網(wǎng)絡(luò)請(qǐng)求子模塊3104,適于通過(guò)所述lua腳本判斷所述網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù)。

優(yōu)選地,所述lua腳本調(diào)用接口包括openresty接口。

網(wǎng)絡(luò)請(qǐng)求發(fā)送模塊330,適于所述網(wǎng)絡(luò)請(qǐng)求是針對(duì)正常的數(shù)據(jù)庫(kù)時(shí),將所述網(wǎng)絡(luò)請(qǐng)求發(fā)送給本地的第二進(jìn)程進(jìn)行處理。

參照?qǐng)D3A,示出了基于圖3的云盤(pán)服務(wù)器訪(fǎng)問(wèn)遷移系統(tǒng)的示例。其中云盤(pán)服務(wù)器集群S310中包括了調(diào)度服務(wù)器S311和各云盤(pán)服務(wù)器S312,調(diào)度服務(wù)器S311負(fù)載整個(gè)系統(tǒng)S310的負(fù)載均衡。每個(gè)云盤(pán)服務(wù)器S312包括上述網(wǎng)絡(luò)請(qǐng)求判斷模塊310、網(wǎng)絡(luò)請(qǐng)求切換模塊320、網(wǎng)絡(luò)請(qǐng)求發(fā)送模塊330等模塊。備用業(yè)務(wù)集群包括調(diào)度服務(wù)器S321和各云盤(pán)服務(wù)器S322,其中每個(gè)云盤(pán)服務(wù)器S322包括第二進(jìn)程。

本發(fā)明實(shí)施例通過(guò)監(jiān)控服務(wù)對(duì)接收到的對(duì)應(yīng)于部署的一組云盤(pán)服務(wù)器集群的網(wǎng)絡(luò)請(qǐng)求進(jìn)行判斷,以判斷所接收到的網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù),如果是,則將該網(wǎng)絡(luò)請(qǐng)求切換至備用業(yè)務(wù)集群的第二進(jìn)程進(jìn)行處理;否則,將網(wǎng)絡(luò)請(qǐng)求在本地的第二進(jìn)程進(jìn)行處理。進(jìn)而可以在保證該組云盤(pán)服務(wù)器集群為用戶(hù)提供正常服務(wù)的同時(shí),取得了在云盤(pán)服務(wù)器集群的數(shù)據(jù)庫(kù)出現(xiàn)問(wèn)題時(shí),避免該云盤(pán)服務(wù)器集群卡死,便于在只部署一個(gè)云盤(pán)服務(wù)器集群的情況下,可以降低對(duì)云盤(pán)服務(wù)器的性能的影響,便于維護(hù)和擴(kuò)展的有益效果。

實(shí)施例四

參照?qǐng)D4,示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的一種云盤(pán)服務(wù)器訪(fǎng)問(wèn)遷移裝置的結(jié)構(gòu)框圖,具體可以包括如下模塊:

網(wǎng)絡(luò)請(qǐng)求判斷模塊410,適于由監(jiān)控服務(wù)判斷接收到的網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù);

優(yōu)選地,所述網(wǎng)絡(luò)請(qǐng)求判斷模塊410,可以包括:

讀取子模塊4106,適于在由監(jiān)控服務(wù)接收到網(wǎng)絡(luò)請(qǐng)求后,讀取配置服務(wù)的值;

網(wǎng)絡(luò)請(qǐng)求判斷子模塊4108,適于根據(jù)所述配置服務(wù)的值,判斷所述網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù)。

優(yōu)選地,在所述讀取子模塊4106之前,還可以包括:

數(shù)據(jù)庫(kù)監(jiān)控子模塊4100,適于監(jiān)控各個(gè)數(shù)據(jù)庫(kù)是否出現(xiàn)異常;

配置文件生成子模塊4102,適于在所述數(shù)據(jù)庫(kù)出現(xiàn)異常時(shí),根據(jù)所述數(shù)據(jù)庫(kù)生成配置文件;

更新子模塊4104,適于將所述配置文件加載至配置服務(wù)中,以更新所述 配置服務(wù)的值。

優(yōu)選地,所述數(shù)據(jù)庫(kù)監(jiān)控子模塊4100,可以包括:

故障數(shù)據(jù)庫(kù)監(jiān)控子模塊41002,適于監(jiān)控各個(gè)數(shù)據(jù)庫(kù)是否出現(xiàn)故障;和/或

各數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)流量監(jiān)控子模塊41004,適于監(jiān)控各個(gè)數(shù)據(jù)庫(kù)的訪(fǎng)問(wèn)流量是否異常。

優(yōu)選地,所述配置文件生成子模塊4102,可以包括:

對(duì)應(yīng)域名的配置文件生成子模塊41022,獲取所述數(shù)據(jù)庫(kù)對(duì)應(yīng)的域名,并根據(jù)所述域名生成配置文件。

優(yōu)選地,所述網(wǎng)絡(luò)請(qǐng)求判斷子模塊4108,可以包括:

匹配判斷子模塊41082,適于判斷對(duì)應(yīng)網(wǎng)絡(luò)請(qǐng)求的域名與所述配置服務(wù)的值是否匹配;

異常數(shù)據(jù)庫(kù)確定子模塊41084,適于在對(duì)應(yīng)網(wǎng)絡(luò)請(qǐng)求的域名與所述配置服務(wù)的值匹配時(shí),確定所述網(wǎng)絡(luò)請(qǐng)求是針對(duì)異常的數(shù)據(jù)庫(kù);

正常數(shù)據(jù)庫(kù)確定子模塊41086,適于在對(duì)應(yīng)網(wǎng)絡(luò)請(qǐng)求的域名與所述配置服務(wù)的值不匹配時(shí),確定所述網(wǎng)絡(luò)請(qǐng)求不是針對(duì)異常的數(shù)據(jù)庫(kù)。

網(wǎng)絡(luò)請(qǐng)求切換模塊420,適于在所述網(wǎng)絡(luò)請(qǐng)求是針對(duì)異常的數(shù)據(jù)庫(kù)時(shí),將所述網(wǎng)絡(luò)請(qǐng)求切換給備用業(yè)務(wù)集群的第二進(jìn)程進(jìn)行處理;

網(wǎng)絡(luò)請(qǐng)求發(fā)送模塊430,適于所述網(wǎng)絡(luò)請(qǐng)求是針對(duì)正常的數(shù)據(jù)庫(kù)時(shí),將所述網(wǎng)絡(luò)請(qǐng)求發(fā)送給本地的第二進(jìn)程進(jìn)行處理。

對(duì)于裝置實(shí)施例而言,由于其與方法實(shí)施例基本相似,所以描述的比較簡(jiǎn)單,相關(guān)之處參見(jiàn)方法實(shí)施例的部分說(shuō)明即可。

實(shí)施例五

參照?qǐng)D5,示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的一種云盤(pán)服務(wù)器訪(fǎng)問(wèn)遷移設(shè)備500的結(jié)構(gòu)框圖,具體可以包括:

存儲(chǔ)器510,加載有多條可執(zhí)行指令;

處理器520,執(zhí)行所述多條可執(zhí)行指令;所述多條指令包括執(zhí)行以下步驟的方法:

由監(jiān)控服務(wù)判斷接收到的網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù);

如果所述網(wǎng)絡(luò)請(qǐng)求是針對(duì)異常的數(shù)據(jù)庫(kù),則將所述網(wǎng)絡(luò)請(qǐng)求切換給備用業(yè)務(wù)集群的第二進(jìn)程進(jìn)行處理;

如果所述網(wǎng)絡(luò)請(qǐng)求是針對(duì)正常的數(shù)據(jù)庫(kù),則將所述網(wǎng)絡(luò)請(qǐng)求發(fā)送給本地的第二進(jìn)程進(jìn)行處理。

優(yōu)選地,本發(fā)明實(shí)施例的多條可執(zhí)行指令還可包括前述各個(gè)步驟的方法,本發(fā)明實(shí)施例不對(duì)其加以限定。

在此提供的算法和顯示不與任何特定計(jì)算機(jī)、虛擬系統(tǒng)或者其它設(shè)備固有相關(guān)。各種通用系統(tǒng)也可以與基于在此的示教一起使用。根據(jù)上面的描述,構(gòu)造這類(lèi)系統(tǒng)所要求的結(jié)構(gòu)是顯而易見(jiàn)的。此外,本發(fā)明也不針對(duì)任何特定編程語(yǔ)言。應(yīng)當(dāng)明白,可以利用各種編程語(yǔ)言實(shí)現(xiàn)在此描述的本發(fā)明的內(nèi)容,并且上面對(duì)特定語(yǔ)言所做的描述是為了披露本發(fā)明的最佳實(shí)施方式。

在此處所提供的說(shuō)明書(shū)中,說(shuō)明了大量具體細(xì)節(jié)。然而,能夠理解,本發(fā)明的實(shí)施例可以在沒(méi)有這些具體細(xì)節(jié)的情況下實(shí)踐。在一些實(shí)例中,并未詳細(xì)示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對(duì)本說(shuō)明書(shū)的理解。

類(lèi)似地,應(yīng)當(dāng)理解,為了精簡(jiǎn)本公開(kāi)并幫助理解各個(gè)發(fā)明方面中的一個(gè)或多個(gè),在上面對(duì)本發(fā)明的示例性實(shí)施例的描述中,本發(fā)明的各個(gè)特征有時(shí)被一起分組到單個(gè)實(shí)施例、圖、或者對(duì)其的描述中。然而,并不應(yīng)將該公開(kāi)的方法解釋成反映如下意圖:即所要求保護(hù)的本發(fā)明要求比在每個(gè)權(quán)利要求中所明確記載的特征更多的特征。更確切地說(shuō),如下面的權(quán)利要求書(shū)所反映的那樣,發(fā)明方面在于少于前面公開(kāi)的單個(gè)實(shí)施例的所有特征。因此,遵循具體實(shí)施方式的權(quán)利要求書(shū)由此明確地并入該具體實(shí)施方式,其中每個(gè)權(quán)利要求本身都作為本發(fā)明的單獨(dú)實(shí)施例。

本領(lǐng)域那些技術(shù)人員可以理解,可以對(duì)實(shí)施例中的設(shè)備中的模塊進(jìn)行自適應(yīng)性地改變并且把它們?cè)O(shè)置在與該實(shí)施例不同的一個(gè)或多個(gè)設(shè)備中??梢? 把實(shí)施例中的模塊或單元或組件組合成一個(gè)模塊或單元或組件,以及此外可以把它們分成多個(gè)子模塊或子單元或子組件。除了這樣的特征和/或過(guò)程或者單元中的至少一些是相互排斥之外,可以采用任何組合對(duì)本說(shuō)明書(shū)(包括伴隨的權(quán)利要求、摘要和附圖)中公開(kāi)的所有特征以及如此公開(kāi)的任何方法或者設(shè)備的所有過(guò)程或單元進(jìn)行組合。除非另外明確陳述,本說(shuō)明書(shū)(包括伴隨的權(quán)利要求、摘要和附圖)中公開(kāi)的每個(gè)特征可以由提供相同、等同或相似目的的替代特征來(lái)代替。

此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實(shí)施例包括其它實(shí)施例中所包括的某些特征而不是其它特征,但是不同實(shí)施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實(shí)施例。例如,在下面的權(quán)利要求書(shū)中,所要求保護(hù)的實(shí)施例的任意之一都可以以任意的組合方式來(lái)使用。

本發(fā)明的各個(gè)部件實(shí)施例可以以硬件實(shí)現(xiàn),或者以在一個(gè)或者多個(gè)處理器上運(yùn)行的軟件模塊實(shí)現(xiàn),或者以它們的組合實(shí)現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在實(shí)踐中使用微處理器或者數(shù)字信號(hào)處理器(DSP)來(lái)實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例的云盤(pán)服務(wù)器訪(fǎng)問(wèn)遷移設(shè)備中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實(shí)現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設(shè)備或者裝置程序(例如,計(jì)算機(jī)程序和計(jì)算機(jī)程序產(chǎn)品)。這樣的實(shí)現(xiàn)本發(fā)明的程序可以存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)上,或者可以具有一個(gè)或者多個(gè)信號(hào)的形式。這樣的信號(hào)可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號(hào)上提供,或者以任何其他形式提供。

應(yīng)該注意的是上述實(shí)施例對(duì)本發(fā)明進(jìn)行說(shuō)明而不是對(duì)本發(fā)明進(jìn)行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計(jì)出替換實(shí)施例。在權(quán)利要求中,不應(yīng)將位于括號(hào)之間的任何參考符號(hào)構(gòu)造成對(duì)權(quán)利要求的限制。單詞“包含”不排除存在未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞“一”或“一個(gè)”不排除存在多個(gè)這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當(dāng)編程的計(jì)算機(jī)來(lái)實(shí)現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個(gè)可以是通過(guò)同一 個(gè)硬件項(xiàng)來(lái)具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序??蓪⑦@些單詞解釋為名稱(chēng)。

本發(fā)明公開(kāi)了A1、一種云盤(pán)服務(wù)器訪(fǎng)問(wèn)遷移方法,包括:

由監(jiān)控服務(wù)判斷接收到的網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù);

如果所述網(wǎng)絡(luò)請(qǐng)求是針對(duì)異常的數(shù)據(jù)庫(kù),則將所述網(wǎng)絡(luò)請(qǐng)求切換給備用業(yè)務(wù)集群的第二進(jìn)程進(jìn)行處理;

如果所述網(wǎng)絡(luò)請(qǐng)求是針對(duì)正常的數(shù)據(jù)庫(kù),則將所述網(wǎng)絡(luò)請(qǐng)求發(fā)送給本地的第二進(jìn)程進(jìn)行處理。

A2、如A1所述的方法,所述由監(jiān)控服務(wù)判斷接收到的網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù)的步驟,包括:

在由監(jiān)控服務(wù)接收到網(wǎng)絡(luò)請(qǐng)求后,讀取配置服務(wù)的值;

根據(jù)所述配置服務(wù)的值,判斷所述網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù)。

A3、如A2所述的方法,在所述由監(jiān)控服務(wù)接收到網(wǎng)絡(luò)請(qǐng)求后,讀取配置服務(wù)的值的步驟之前,還包括:

監(jiān)控各個(gè)數(shù)據(jù)庫(kù)是否出現(xiàn)異常;

如果所述數(shù)據(jù)庫(kù)出現(xiàn)異常,則根據(jù)所述數(shù)據(jù)庫(kù)生成配置文件;

將所述配置文件加載至配置服務(wù)中,以更新所述配置服務(wù)的值。

A4、如A3所述的方法,所述監(jiān)控各個(gè)數(shù)據(jù)庫(kù)是否出現(xiàn)異常的步驟,包括:

監(jiān)控各個(gè)數(shù)據(jù)庫(kù)是否出現(xiàn)故障;

和/或監(jiān)控各個(gè)數(shù)據(jù)庫(kù)的訪(fǎng)問(wèn)流量是否異常。

A5、如A3所述的方法,所述根據(jù)所述數(shù)據(jù)庫(kù)生成配置文件的步驟,包括:

獲取所述數(shù)據(jù)庫(kù)對(duì)應(yīng)的域名,并根據(jù)所述域名生成配置文件。

A6、如A4所述的方法,所述根據(jù)所述配置服務(wù)的值,判斷所述網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù)的步驟,包括:

判斷對(duì)應(yīng)網(wǎng)絡(luò)請(qǐng)求的域名與所述配置服務(wù)的值是否匹配;

如果對(duì)應(yīng)網(wǎng)絡(luò)請(qǐng)求的域名與所述配置服務(wù)的值匹配,則確定所述網(wǎng)絡(luò)請(qǐng) 求是針對(duì)異常的數(shù)據(jù)庫(kù);

如果對(duì)應(yīng)網(wǎng)絡(luò)請(qǐng)求的域名與所述配置服務(wù)的值不匹配,則確定所述網(wǎng)絡(luò)請(qǐng)求不是針對(duì)異常的數(shù)據(jù)庫(kù)。

A7、如A1所述的方法,所述監(jiān)控服務(wù)包括nginx多進(jìn)程模型服務(wù);所述第二進(jìn)程包括PHP進(jìn)程。

A8、如A7所述的方法,所述由監(jiān)控服務(wù)判斷接收到的網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù)的步驟,包括:

在nginx多進(jìn)程模型服務(wù)接收到一網(wǎng)絡(luò)請(qǐng)求后,通過(guò)lua腳本調(diào)用接口調(diào)用lua腳本;

通過(guò)所述lua腳本判斷所述網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù)。

A9、如A8所述的方法,所述lua腳本調(diào)用接口包括openresty接口。

本發(fā)明還公開(kāi)了B10、一種云盤(pán)服務(wù)器訪(fǎng)問(wèn)遷移裝置,包括:

網(wǎng)絡(luò)請(qǐng)求判斷模塊,適于由監(jiān)控服務(wù)判斷接收到的網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù);

網(wǎng)絡(luò)請(qǐng)求切換模塊,適于在所述網(wǎng)絡(luò)請(qǐng)求是針對(duì)異常的數(shù)據(jù)庫(kù)時(shí),將所述網(wǎng)絡(luò)請(qǐng)求切換給備用業(yè)務(wù)集群的第二進(jìn)程進(jìn)行處理;

網(wǎng)絡(luò)請(qǐng)求發(fā)送模塊,適于所述網(wǎng)絡(luò)請(qǐng)求是針對(duì)正常的數(shù)據(jù)庫(kù)時(shí),將所述網(wǎng)絡(luò)請(qǐng)求發(fā)送給本地的第二進(jìn)程進(jìn)行處理。

B11、如B10所述的裝置,所述網(wǎng)絡(luò)請(qǐng)求判斷模塊,包括:

讀取子模塊,適于在由監(jiān)控服務(wù)接收到網(wǎng)絡(luò)請(qǐng)求后,讀取配置服務(wù)的值;

網(wǎng)絡(luò)請(qǐng)求判斷子模塊,適于根據(jù)所述配置服務(wù)的值,判斷所述網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù)。

B12、如B11所述的裝置,在所述讀取子模塊之前,還包括:

數(shù)據(jù)庫(kù)監(jiān)控子模塊,適于監(jiān)控各個(gè)數(shù)據(jù)庫(kù)是否出現(xiàn)異常;

配置文件生成子模塊,適于在所述數(shù)據(jù)庫(kù)出現(xiàn)異常時(shí),根據(jù)所述數(shù)據(jù)庫(kù)生成配置文件;

更新子模塊,適于將所述配置文件加載至配置服務(wù)中,以更新所述配置服務(wù)的值。

B13、如B12所述的裝置,所述數(shù)據(jù)庫(kù)監(jiān)控子模塊,包括:

故障數(shù)據(jù)庫(kù)監(jiān)控子模塊,適于監(jiān)控各個(gè)數(shù)據(jù)庫(kù)是否出現(xiàn)故障;和/或

各數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)流量監(jiān)控子模塊,適于監(jiān)控各個(gè)數(shù)據(jù)庫(kù)的訪(fǎng)問(wèn)流量是否異常。

B14、如B12所述的裝置,所述配置文件生成子模塊,包括:

對(duì)應(yīng)域名的配置文件生成子模塊,獲取所述數(shù)據(jù)庫(kù)對(duì)應(yīng)的域名,并根據(jù)所述域名生成配置文件。

B15、如B13所述的裝置,所述網(wǎng)絡(luò)請(qǐng)求判斷子模塊,包括:

匹配判斷子模塊,適于判斷對(duì)應(yīng)網(wǎng)絡(luò)請(qǐng)求的域名與所述配置服務(wù)的值是否匹配;

異常數(shù)據(jù)庫(kù)確定子模塊,適于在對(duì)應(yīng)網(wǎng)絡(luò)請(qǐng)求的域名與所述配置服務(wù)的值匹配時(shí),確定所述網(wǎng)絡(luò)請(qǐng)求是針對(duì)異常的數(shù)據(jù)庫(kù);

正常數(shù)據(jù)庫(kù)確定子模塊,適于在對(duì)應(yīng)網(wǎng)絡(luò)請(qǐng)求的域名與所述配置服務(wù)的值不匹配時(shí),確定所述網(wǎng)絡(luò)請(qǐng)求不是針對(duì)異常的數(shù)據(jù)庫(kù)。

B16、如B10所述的裝置,所述監(jiān)控服務(wù)包括nginx多進(jìn)程模型服務(wù);所述第二進(jìn)程包括PHP進(jìn)程。

B17、如B16所述的裝置,所述網(wǎng)絡(luò)請(qǐng)求判斷模塊,包括:

lua腳本調(diào)用子模塊,適于在nginx多進(jìn)程模型服務(wù)接收到一網(wǎng)絡(luò)請(qǐng)求后,通過(guò)lua腳本調(diào)用接口調(diào)用lua腳本;

lua腳本判斷網(wǎng)絡(luò)請(qǐng)求子模塊,適于通過(guò)所述lua腳本判斷所述網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù)。

B18、如B17所述的裝置,所述lua腳本調(diào)用接口包括openresty接口。

本發(fā)明還公開(kāi)了C19、一種云盤(pán)服務(wù)器訪(fǎng)問(wèn)遷移設(shè)備,包括:

存儲(chǔ)器,加載有多條可執(zhí)行指令;

處理器,執(zhí)行所述多條可執(zhí)行指令;所述多條指令包括執(zhí)行以下步驟的方法:

由監(jiān)控服務(wù)判斷接收到的網(wǎng)絡(luò)請(qǐng)求是否針對(duì)異常的數(shù)據(jù)庫(kù);

如果所述網(wǎng)絡(luò)請(qǐng)求是針對(duì)異常的數(shù)據(jù)庫(kù),則將所述網(wǎng)絡(luò)請(qǐng)求切換給備用 業(yè)務(wù)集群的第二進(jìn)程進(jìn)行處理;

如果所述網(wǎng)絡(luò)請(qǐng)求是針對(duì)正常的數(shù)據(jù)庫(kù),則將所述網(wǎng)絡(luò)請(qǐng)求發(fā)送給本地的第二進(jìn)程進(jìn)行處理。

當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
克什克腾旗| 江川县| 唐山市| 绵阳市| 肥东县| 海门市| 城步| 沁源县| 桑日县| 沈阳市| 独山县| 区。| 岱山县| 樟树市| 洞口县| 信阳市| 广元市| 敖汉旗| 楚雄市| 南丹县| 马鞍山市| 泰州市| 鸡泽县| 柳江县| 太仆寺旗| 梅州市| 南涧| 乐安县| 休宁县| 宣恩县| 襄城县| 平潭县| 武乡县| 汉沽区| 扎囊县| 交城县| 肥东县| 交城县| 满洲里市| 孝昌县| 汝南县|