處理數(shù)據(jù)請求及獲取服務(wù)器信息的方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,具體而言,本發(fā)明涉及一種處理數(shù)據(jù)請求及獲取服務(wù)器信息的方法及裝置。
【背景技術(shù)】
[0002]隨著網(wǎng)絡(luò)應(yīng)用的迅速發(fā)展,人們獲取信息的數(shù)據(jù)業(yè)務(wù)的需求也越來越多,因此對服務(wù)器及時(shí)處理大數(shù)據(jù)業(yè)務(wù)的能力也要求越來越高。當(dāng)用戶請求的數(shù)據(jù)業(yè)務(wù)成百倍或千倍的激增時(shí),需要在服務(wù)器端對服務(wù)器集群進(jìn)行線性擴(kuò)展。在現(xiàn)有技術(shù)中,如在0PS(0raCleParallel Server ,Oracle集群)中,首先通過通知OPS申請相應(yīng)的服務(wù)器,在OPS申請到相應(yīng)的服務(wù)器后,數(shù)據(jù)請求此時(shí)仍無法發(fā)送到申請到的服務(wù)器中,還需要OPS維護(hù)管理人員通過相應(yīng)的方式把LVS(Linux Virtual Server,Linux虛擬服務(wù)器)的域名分配至申請到的服務(wù)器中,并對服務(wù)器進(jìn)行與數(shù)據(jù)業(yè)務(wù)相應(yīng)的配置,經(jīng)過這一系列的步驟,將耗費(fèi)較長的時(shí)間才可將數(shù)據(jù)請求發(fā)送到申請到的服務(wù)器中,無法及時(shí)高效的處理數(shù)據(jù)業(yè)務(wù),且當(dāng)申請的服務(wù)器數(shù)量超過OPS中存在的服務(wù)器數(shù)量時(shí),將無法完成相應(yīng)業(yè)務(wù)的數(shù)據(jù)處理,同時(shí),在LVS分配域名的過程中,要求分配的域名與申請到的服務(wù)器嚴(yán)格匹配,否則將導(dǎo)致申請到的服務(wù)器接收到錯(cuò)誤的業(yè)務(wù)數(shù)據(jù)處理請求。
[0003]因此,需要一種自動(dòng)擴(kuò)充服務(wù)器集群容量的方案,當(dāng)用戶請求的數(shù)據(jù)業(yè)務(wù)成百倍或千倍的激增時(shí),可實(shí)現(xiàn)高效快速的處理大數(shù)據(jù)業(yè)務(wù)的目的。
【發(fā)明內(nèi)容】
[0004]為克服上述技術(shù)問題或者至少部分地解決上述技術(shù)問題,特提出以下技術(shù)方案:
[0005]本發(fā)明的實(shí)施例提出了一種處理數(shù)據(jù)請求的方法,包括:
[0006]接收來自前端業(yè)務(wù)的數(shù)據(jù)請求;
[0007]獲取與所述數(shù)據(jù)請求對應(yīng)的所有可用業(yè)務(wù)服務(wù)器的相關(guān)信息,并確定與所述數(shù)據(jù)請求相匹配的業(yè)務(wù)服務(wù)器;
[0008]將所述數(shù)據(jù)請求發(fā)送至相匹配的業(yè)務(wù)服務(wù)器。
[0009]優(yōu)選地,獲取與所述數(shù)據(jù)請求對應(yīng)的所有可用業(yè)務(wù)服務(wù)器的相關(guān)信息,具體包括:
[0010]發(fā)送用于獲取業(yè)務(wù)服務(wù)器信息列表的獲取請求;
[0011]接收響應(yīng)于所述獲取請求返回的業(yè)務(wù)服務(wù)器信息列表;
[0012]在所述業(yè)務(wù)服務(wù)器信息列表中查找與所述數(shù)據(jù)請求對應(yīng)的所有可用業(yè)務(wù)服務(wù)器的相關(guān)信息。
[0013]優(yōu)選地,獲取與所述數(shù)據(jù)請求對應(yīng)的所有可用業(yè)務(wù)服務(wù)器的相關(guān)信息,具體包括:
[0014]在存儲(chǔ)的業(yè)務(wù)服務(wù)器信息列表中查找與所述數(shù)據(jù)請求對應(yīng)的所有可用業(yè)務(wù)服務(wù)器的相關(guān)信息。
[0015]優(yōu)選地,確定與所述數(shù)據(jù)請求相匹配的業(yè)務(wù)服務(wù)器,具體包括:
[0016]對獲取到的與所述數(shù)據(jù)請求對應(yīng)的所有可用業(yè)務(wù)服務(wù)器進(jìn)行負(fù)載均衡,以確定與所述數(shù)據(jù)請求相匹配的業(yè)務(wù)服務(wù)器。
[0017]優(yōu)選地,對獲取到的與所述數(shù)據(jù)請求對應(yīng)的所有可用業(yè)務(wù)服務(wù)器進(jìn)行負(fù)載均衡,以確定與所述數(shù)據(jù)請求相匹配的業(yè)務(wù)服務(wù)器,具體包括:
[0018]獲取各個(gè)業(yè)務(wù)服務(wù)器的業(yè)務(wù)分配權(quán)重;
[0019]結(jié)合所述業(yè)務(wù)分配權(quán)重,對獲取到的與所述數(shù)據(jù)請求對應(yīng)的所有可用業(yè)務(wù)服務(wù)器進(jìn)行負(fù)載均衡,以確定與所述數(shù)據(jù)請求相匹配的業(yè)務(wù)服務(wù)器。
[0020]優(yōu)選地,該方法還包括:
[0021]接收針對所述存儲(chǔ)的業(yè)務(wù)服務(wù)器信息列表的更新指令,并基于所述更新指令對所述業(yè)務(wù)服務(wù)器信息列表執(zhí)行更新操作。
[0022]本發(fā)明的實(shí)施例提出了一種獲取服務(wù)器信息的方法,包括:
[0023]分別發(fā)送用于檢測各個(gè)業(yè)務(wù)服務(wù)器的工作狀態(tài)的檢測指令;
[0024]根據(jù)各個(gè)業(yè)務(wù)服務(wù)器對所述檢測指令的響應(yīng)生成業(yè)務(wù)服務(wù)器信息列表。
[0025]優(yōu)選地,分別發(fā)送用于檢測各個(gè)業(yè)務(wù)服務(wù)器的工作狀態(tài)的檢測指令,具體包括:
[0026]接收到用于獲取業(yè)務(wù)服務(wù)器信息列表的獲取請求時(shí),響應(yīng)于所述獲取請求,分別發(fā)送用于檢測各個(gè)業(yè)務(wù)服務(wù)器的工作狀態(tài)的檢測指令;
[0027]其中,還包括:
[0028]響應(yīng)于所述獲取請求發(fā)送已生成的業(yè)務(wù)服務(wù)器信息列表。
[0029]優(yōu)選地,該方法還包括:
[0030]接收到用于獲取業(yè)務(wù)服務(wù)器信息列表的獲取請求時(shí),響應(yīng)于所述獲取請求發(fā)送存儲(chǔ)的業(yè)務(wù)服務(wù)器信息列表。
[0031]優(yōu)選地,該方法還包括:
[0032]分別發(fā)送用于檢測各個(gè)業(yè)務(wù)服務(wù)器的工作狀態(tài)的檢測指令;
[0033]根據(jù)各個(gè)業(yè)務(wù)服務(wù)器對所述檢測指令的響應(yīng)更新所述業(yè)務(wù)服務(wù)器信息列表。
[0034]優(yōu)選地,根據(jù)各個(gè)業(yè)務(wù)服務(wù)器對所述檢測指令的響應(yīng)更新所述業(yè)務(wù)服務(wù)器信息列表,具體包括:
[0035]若未接收到所述業(yè)務(wù)服務(wù)器信息列表中任一業(yè)務(wù)服務(wù)器針對所述檢測指令的響應(yīng)時(shí),在所述服務(wù)器信息列表中刪除該業(yè)務(wù)服務(wù)器的相關(guān)信息。
[0036]優(yōu)選地,該方法還包括:
[0037]若接收到不包括在所述業(yè)務(wù)服務(wù)器信息列表中的任一業(yè)務(wù)服務(wù)器的廣播消息時(shí),在所述服務(wù)器信息列表中添加該業(yè)務(wù)服務(wù)器的相關(guān)信息。
[0038]優(yōu)選地,該方法還包括:
[0039]當(dāng)檢測到所述業(yè)務(wù)服務(wù)器信息列表發(fā)生更新操作時(shí),生成針對所述業(yè)務(wù)服務(wù)器信息列表的更新指令,并對所述更新指令進(jìn)行發(fā)送。
[0040]本發(fā)明的另一實(shí)施例提出了一種處理數(shù)據(jù)請求的裝置,包括:
[0041 ]接收模塊,用于接收來自前端業(yè)務(wù)的數(shù)據(jù)請求;
[0042]獲取確定模塊,用于獲取與所述數(shù)據(jù)請求對應(yīng)的所有可用業(yè)務(wù)服務(wù)器的相關(guān)信息,并確定與所述數(shù)據(jù)請求相匹配的業(yè)務(wù)服務(wù)器;
[0043]第一發(fā)送模塊,用于將所述數(shù)據(jù)請求發(fā)送至相匹配的業(yè)務(wù)服務(wù)器。
[0044]優(yōu)選地,所述獲取確定模塊具體包括:
[0045]發(fā)送單元,用于發(fā)送用于獲取業(yè)務(wù)服務(wù)器信息列表的獲取請求;
[0046]接收單元,用于接收響應(yīng)于所述獲取請求返回的業(yè)務(wù)服務(wù)器信息列表;
[0047]第一查找單元,用于在所述業(yè)務(wù)服務(wù)器信息列表中查找與所述數(shù)據(jù)請求對應(yīng)的所有可用業(yè)務(wù)服務(wù)器的相關(guān)信息。
[0048]優(yōu)選地,所述獲取確定模塊具體包括:
[0049]第二查找單元,用于在存儲(chǔ)的業(yè)務(wù)服務(wù)器信息列表中查找與所述數(shù)據(jù)請求對應(yīng)的所有可用業(yè)務(wù)服務(wù)器的相關(guān)信息。
[0050]優(yōu)選地,所述獲取確定模塊具體包括:
[0051]確定單元,用于對獲取到的與所述數(shù)據(jù)請求對應(yīng)的所有可用業(yè)務(wù)服務(wù)器進(jìn)行負(fù)載均衡,以確定與所述數(shù)據(jù)請求相匹配的業(yè)務(wù)服務(wù)器。
[0052]優(yōu)選地,所述確定單元具體包括:
[0053]獲取子單元,用于獲取各個(gè)業(yè)務(wù)服務(wù)器的業(yè)務(wù)分配權(quán)重;
[0054]確定子單元,用于結(jié)合所述業(yè)務(wù)分配權(quán)重,對獲取到的與所述數(shù)據(jù)請求對應(yīng)的所有可用業(yè)務(wù)服務(wù)器進(jìn)行負(fù)載均衡,以確定與所述數(shù)據(jù)請求相匹配的業(yè)務(wù)服務(wù)器。
[0055]優(yōu)選地,該裝置還包括:
[0056]第一更新模塊,用于接收針對所述存儲(chǔ)的業(yè)務(wù)服務(wù)器信息列表的更新指令,并基于所述更新指令對所述業(yè)務(wù)服務(wù)器信息列表執(zhí)行更新操作。
[0057]本發(fā)明的另一實(shí)施例提出了一種獲取服務(wù)器信息的裝置,包括:
[0058]第二發(fā)送模塊,用于分別發(fā)送用于檢測各個(gè)業(yè)務(wù)服務(wù)器的工作狀態(tài)的檢測指令;
[0059]生成模塊,用于根據(jù)各個(gè)業(yè)務(wù)服務(wù)器對所述檢測指令的響應(yīng)生成業(yè)務(wù)服務(wù)器信息列表。
[0060]優(yōu)選地,所述第二發(fā)送模塊具體包括:
[0061 ]響應(yīng)發(fā)送單元,用于接收到用于獲取業(yè)務(wù)服務(wù)器信息列表的獲取請求時(shí),響應(yīng)于所述獲取請求,分別發(fā)送用于檢測各個(gè)業(yè)務(wù)服務(wù)器的工作狀態(tài)的檢測指令;
[0062]其中,所述響應(yīng)發(fā)送單元還包括:
[0063]發(fā)送子單元,用于響應(yīng)于所述獲取請求發(fā)送已生成的業(yè)務(wù)服務(wù)器信息列表。
[0064]優(yōu)選地,該裝置還包括:
[0065]第三發(fā)送模塊,用于接收到用于獲取業(yè)務(wù)服務(wù)器信息列表的獲取請求時(shí),響應(yīng)于所述獲取請求發(fā)送存儲(chǔ)的業(yè)務(wù)服務(wù)器信息列表。
[0066]優(yōu)選地,該裝置還包括:
[0067]第四發(fā)送模塊,用于分別發(fā)送用于檢測各個(gè)業(yè)務(wù)服務(wù)器的工作狀態(tài)的檢測指令;
[0068]第二更新模塊,用于根據(jù)各個(gè)業(yè)務(wù)服務(wù)器對所述檢測指令的響應(yīng)更新所述業(yè)務(wù)服務(wù)器信息列表。
[0069]優(yōu)選地,所述第二更新模塊具體包括:
[0070]刪除單元,用于若未接收到所述業(yè)務(wù)服務(wù)器信息列表中任一業(yè)務(wù)服務(wù)器針對所述檢測指令的響應(yīng)時(shí),在所述服務(wù)器信息列表中刪除該業(yè)務(wù)服務(wù)器的相關(guān)信息。
[0071]優(yōu)選地,該裝置還包括:
[0072]添加模塊,用于若接收到不包括在所述業(yè)務(wù)服務(wù)器信息列表中的任一業(yè)務(wù)服務(wù)器的廣播消息時(shí),在所述服務(wù)器信息列表中添加該業(yè)務(wù)服務(wù)器的相關(guān)信息。
[0073]優(yōu)選地,該裝置還包括:
[0074]生成發(fā)送模塊,用于當(dāng)檢測到所述業(yè)務(wù)服務(wù)器信息列表發(fā)生更新操作時(shí),生成針對所述業(yè)務(wù)服務(wù)器信息列表的更新指令,并對所述更新指令進(jìn)行發(fā)送。
[0075]本發(fā)明的實(shí)施例中,提出了一種處理數(shù)據(jù)請求及獲取服務(wù)器信息的方案,可根據(jù)數(shù)據(jù)請求獲取與數(shù)據(jù)請求對應(yīng)的所有可用業(yè)務(wù)服務(wù)器的相關(guān)信息,并確定與數(shù)據(jù)請求相匹配的業(yè)務(wù)服務(wù)器,當(dāng)不存在與數(shù)據(jù)請求對應(yīng)的業(yè)務(wù)服務(wù)器時(shí),可自動(dòng)擴(kuò)充對應(yīng)業(yè)務(wù)服務(wù)器的數(shù)量,完成處理相應(yīng)業(yè)務(wù)數(shù)據(jù)的請求,并通過可用業(yè)務(wù)服務(wù)器信息列表維護(hù)各業(yè)務(wù)服務(wù)器的運(yùn)行狀態(tài),在業(yè)務(wù)數(shù)據(jù)請求量激增的情況下也可高效準(zhǔn)確處理相應(yīng)的數(shù)據(jù)請求。進(jìn)一步的,對各個(gè)業(yè)務(wù)服務(wù)器的業(yè)務(wù)分配權(quán)重,可根據(jù)各業(yè)務(wù)服務(wù)器自身的業(yè)務(wù)數(shù)據(jù)處理能力合理分配相應(yīng)業(yè)務(wù)數(shù)據(jù)請求,最大限度的發(fā)揮各業(yè)務(wù)服務(wù)器的業(yè)務(wù)處理能力;同時(shí),通過負(fù)載均衡技術(shù),使各業(yè)務(wù)服務(wù)器均能夠同時(shí)處理相應(yīng)業(yè)務(wù)數(shù)據(jù)請求,為高效的處理數(shù)據(jù)請求提供了有力的保障。更進(jìn)一步地,各業(yè)務(wù)服務(wù)器為運(yùn)行在一個(gè)物理設(shè)