本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,特別是涉及一種輕量級(jí)分布式計(jì)算平臺(tái)及其數(shù)據(jù)處理方法。
背景技術(shù):
計(jì)算和存儲(chǔ)是信息產(chǎn)業(yè)發(fā)展的兩大主題,分布式計(jì)算平臺(tái)用于整合計(jì)算和存儲(chǔ)資源,如何平衡計(jì)算的靈活性和數(shù)據(jù)分析的高效性一直是學(xué)術(shù)界和產(chǎn)業(yè)界的研究熱點(diǎn)。大數(shù)據(jù)概念出現(xiàn)后以數(shù)據(jù)為中心的分布式系統(tǒng)研究越來(lái)越得到人們的關(guān)注,設(shè)計(jì)出具有靈活高效的面向數(shù)據(jù)的分布式系統(tǒng)成為了當(dāng)前系統(tǒng)架構(gòu)研究的重要課題。
目前的分布式計(jì)算平臺(tái)主要包括mpi(messagepassinginterface,信息傳遞接口),mpi由于沒(méi)有分布式文件系統(tǒng),mpi通過(guò)消息傳遞機(jī)制可以讓程序靈活地調(diào)度和分配計(jì)算任務(wù),但并行編程需要人工完成,難度較大,無(wú)法有效地對(duì)大數(shù)據(jù)應(yīng)用進(jìn)行處理。傳統(tǒng)的分布式計(jì)算平臺(tái)存在無(wú)法在確保計(jì)算靈活性的前提下有效地對(duì)大數(shù)據(jù)應(yīng)用進(jìn)行處理。
技術(shù)實(shí)現(xiàn)要素:
基于此,有必要針對(duì)上述問(wèn)題,提供一種在確保計(jì)算靈活性的前提下有效地對(duì)大數(shù)據(jù)應(yīng)用進(jìn)行處理的輕量級(jí)分布式計(jì)算平臺(tái)及其數(shù)據(jù)處理方法。
一種輕量級(jí)分布式計(jì)算平臺(tái),包括應(yīng)用服務(wù)器、網(wǎng)關(guān)服務(wù)器和節(jié)點(diǎn)服務(wù)器,所述應(yīng)用服務(wù)器與所述網(wǎng)關(guān)服務(wù)器通過(guò)agw協(xié)議通信連接,所述網(wǎng)關(guān)服務(wù)器和所述節(jié)點(diǎn)服務(wù)器通過(guò)agw協(xié)議通信連接,所述節(jié)點(diǎn)服務(wù)器和所述應(yīng)用服務(wù)器通過(guò)agw協(xié)議通信連接,所述agw協(xié)議的格式包括協(xié)議長(zhǎng)度、協(xié)議標(biāo)識(shí)和加密后的協(xié)議內(nèi)容;
所述應(yīng)用服務(wù)器用于接收根據(jù)所述agw協(xié)議傳輸?shù)膮f(xié)議數(shù)據(jù)包,對(duì)所述協(xié)議數(shù)據(jù)包進(jìn)行提取得到請(qǐng)求消息,并將所述請(qǐng)求消息發(fā)送至所述網(wǎng)關(guān)服務(wù)器;所述網(wǎng)關(guān)服務(wù)器用于將所述請(qǐng)求消息轉(zhuǎn)發(fā)至所述節(jié)點(diǎn)服務(wù)器;所述節(jié)點(diǎn)服務(wù)器用于根據(jù)所述請(qǐng)求消息反向連接至所述應(yīng)用服務(wù)器進(jìn)行數(shù)據(jù)交互。
一種輕量級(jí)分布式計(jì)算平臺(tái)的數(shù)據(jù)處理方法,包括以下步驟:
應(yīng)用服務(wù)器接收根據(jù)agw協(xié)議傳輸?shù)膮f(xié)議數(shù)據(jù)包,對(duì)所述協(xié)議數(shù)據(jù)包進(jìn)行提取得到請(qǐng)求消息;所述agw協(xié)議的格式包括協(xié)議長(zhǎng)度、協(xié)議標(biāo)識(shí)和加密后的協(xié)議內(nèi)容;
所述應(yīng)用服務(wù)器將所述請(qǐng)求消息發(fā)送至網(wǎng)關(guān)服務(wù)器;
所述網(wǎng)關(guān)服務(wù)器將所述請(qǐng)求消息轉(zhuǎn)發(fā)至節(jié)點(diǎn)服務(wù)器;
所述節(jié)點(diǎn)服務(wù)器根據(jù)所述請(qǐng)求消息反向連接至所述應(yīng)用服務(wù)器進(jìn)行數(shù)據(jù)交互。
上述輕量級(jí)分布式計(jì)算平臺(tái)及其數(shù)據(jù)處理方法,應(yīng)用服務(wù)器接收根據(jù)agw協(xié)議傳輸?shù)膮f(xié)議數(shù)據(jù)包,對(duì)協(xié)議數(shù)據(jù)包進(jìn)行提取得到請(qǐng)求消息,并將請(qǐng)求消息發(fā)送至網(wǎng)關(guān)服務(wù)器。網(wǎng)關(guān)服務(wù)器將請(qǐng)求消息轉(zhuǎn)發(fā)至節(jié)點(diǎn)服務(wù)器,節(jié)點(diǎn)服務(wù)器用于根據(jù)請(qǐng)求消息反向連接至應(yīng)用服務(wù)器進(jìn)行數(shù)據(jù)交互。建立應(yīng)用服務(wù)器、網(wǎng)關(guān)服務(wù)器和節(jié)點(diǎn)服務(wù)器之間的agw協(xié)議通信,使得輕量級(jí)分布式計(jì)算平臺(tái)不受語(yǔ)言限制,只需按照agw協(xié)議的標(biāo)準(zhǔn)即可進(jìn)行數(shù)據(jù)的操作,確保了計(jì)算靈活性。應(yīng)用服務(wù)器與節(jié)點(diǎn)服務(wù)器直接傳輸數(shù)據(jù),避免了在進(jìn)行大量數(shù)據(jù)交換時(shí)網(wǎng)關(guān)服務(wù)器因傳輸大量數(shù)據(jù)而成為系統(tǒng)瓶頸,可以有效地對(duì)大數(shù)據(jù)應(yīng)用進(jìn)行處理。
附圖說(shuō)明
圖1為一實(shí)施例中輕量級(jí)分布式計(jì)算平臺(tái)的結(jié)構(gòu)圖;
圖2為一實(shí)施例中輕量級(jí)分布式計(jì)算平臺(tái)的數(shù)據(jù)處理方法的流程圖。
具體實(shí)施方式
在一個(gè)實(shí)施例中,一種輕量級(jí)分布式計(jì)算平臺(tái),如圖1所示,包括應(yīng)用服務(wù)器110、網(wǎng)關(guān)服務(wù)器120和節(jié)點(diǎn)服務(wù)器130,應(yīng)用服務(wù)器110與網(wǎng)關(guān)服務(wù)器120通過(guò)agw(appgatework,應(yīng)用網(wǎng)關(guān)節(jié)點(diǎn))協(xié)議通信連接,網(wǎng)關(guān)服務(wù)器120和節(jié)點(diǎn)服務(wù)器130通過(guò)agw協(xié)議通信連接,節(jié)點(diǎn)服務(wù)器130和應(yīng)用服務(wù)器140通過(guò)agw協(xié)議通信連接。應(yīng)用服務(wù)器110、網(wǎng)關(guān)服務(wù)器120和節(jié)點(diǎn)服務(wù)器130的數(shù)量均可以使一個(gè)或多個(gè),當(dāng)應(yīng)用服務(wù)器110、網(wǎng)關(guān)服務(wù)器120和節(jié)點(diǎn)服務(wù)器130的均為多個(gè)時(shí),可根據(jù)實(shí)際需求調(diào)整應(yīng)用服務(wù)器110與網(wǎng)關(guān)服務(wù)器120之間,網(wǎng)關(guān)服務(wù)器120與節(jié)點(diǎn)服務(wù)器130之間,以及節(jié)點(diǎn)服務(wù)器130與應(yīng)用服務(wù)器110之間的通信映射關(guān)系。
應(yīng)用服務(wù)器110、網(wǎng)關(guān)服務(wù)器120和節(jié)點(diǎn)服務(wù)器130之間使用agw協(xié)議進(jìn)行通訊協(xié)調(diào),三種服務(wù)器的實(shí)現(xiàn)中使用了消息隊(duì)列、線(xiàn)程池和連接池關(guān)鍵技術(shù)。agw協(xié)議的格式包括協(xié)議長(zhǎng)度、協(xié)議標(biāo)識(shí)和加密后的協(xié)議內(nèi)容。agw協(xié)議是該平臺(tái)文件系統(tǒng)的數(shù)據(jù)進(jìn)行流轉(zhuǎn)的標(biāo)準(zhǔn),通過(guò)該協(xié)議保證數(shù)據(jù)傳輸?shù)恼_性和完整性,agw協(xié)議適用于支持socket通信的語(yǔ)言接入。利用agw協(xié)議作為系統(tǒng)的各個(gè)服務(wù)器之間通信的標(biāo)準(zhǔn),使得輕量級(jí)分布式計(jì)算平臺(tái)不受語(yǔ)言限制,只需按照agw協(xié)議的標(biāo)準(zhǔn)即可進(jìn)行數(shù)據(jù)的操作,確保了計(jì)算靈活性。
應(yīng)用服務(wù)器110用于接收根據(jù)agw協(xié)議傳輸?shù)膮f(xié)議數(shù)據(jù)包,對(duì)協(xié)議數(shù)據(jù)包進(jìn)行提取得到請(qǐng)求消息,并將請(qǐng)求消息發(fā)送至網(wǎng)關(guān)服務(wù)器120;網(wǎng)關(guān)服務(wù)器120用于將請(qǐng)求消息轉(zhuǎn)發(fā)至節(jié)點(diǎn)服務(wù)器130;節(jié)點(diǎn)服務(wù)器130用于根據(jù)請(qǐng)求消息反向連接至應(yīng)用服務(wù)器110進(jìn)行數(shù)據(jù)交互。
具體地,應(yīng)用開(kāi)發(fā)者可通過(guò)應(yīng)用服務(wù)器110向輕量級(jí)分布式計(jì)算平臺(tái)發(fā)送請(qǐng)求以進(jìn)行文件存儲(chǔ)、文件修改以及數(shù)據(jù)運(yùn)算等操作。根據(jù)請(qǐng)求類(lèi)型的不同,對(duì)協(xié)議數(shù)據(jù)包提取得到的請(qǐng)求消息也對(duì)應(yīng)有所不同。請(qǐng)求消息可包括文件操作請(qǐng)求和數(shù)據(jù)運(yùn)算請(qǐng)求兩大類(lèi),其中,文件操作請(qǐng)求可包括創(chuàng)建文件夾、獲取目錄文件結(jié)構(gòu)、文件上傳、文件下載、更改目錄名字、更改文件名字、刪除文件夾和刪除文件等,數(shù)據(jù)運(yùn)算請(qǐng)求可包括上傳計(jì)算原子、啟動(dòng)計(jì)算原子、獲取原子計(jì)算結(jié)果和啟動(dòng)服務(wù)計(jì)算原子等。
應(yīng)用服務(wù)器110是外部接入的關(guān)鍵,外部應(yīng)用接入本平臺(tái)也使用agw協(xié)議的方式訪問(wèn)應(yīng)用服務(wù)器110。應(yīng)用服務(wù)器110駐留在應(yīng)用開(kāi)發(fā)者節(jié)點(diǎn)上,應(yīng)用開(kāi)發(fā)者在應(yīng)用服務(wù)器110上可以采用任意的編程語(yǔ)言通過(guò)協(xié)議調(diào)用節(jié)點(diǎn)服務(wù)器130的計(jì)算和存儲(chǔ)資源。應(yīng)用服務(wù)器110的物理位置通常是分散在應(yīng)用開(kāi)發(fā)者所在機(jī)房的,應(yīng)用服務(wù)器110對(duì)外的協(xié)議通過(guò)socket方式進(jìn)行傳輸,實(shí)現(xiàn)與具體的編程語(yǔ)言無(wú)關(guān)。應(yīng)用服務(wù)器110將應(yīng)用接入?yún)f(xié)議轉(zhuǎn)換成分布式計(jì)算平臺(tái)的內(nèi)部標(biāo)準(zhǔn)協(xié)議,然后應(yīng)用服務(wù)器110轉(zhuǎn)給網(wǎng)關(guān)服務(wù)器120;網(wǎng)關(guān)服務(wù)器120將應(yīng)用請(qǐng)求轉(zhuǎn)發(fā)到節(jié)點(diǎn)服務(wù)器130;節(jié)點(diǎn)服務(wù)器130在得到服務(wù)請(qǐng)求后主動(dòng)反向連接應(yīng)用服務(wù)器110,進(jìn)行具體的數(shù)據(jù)交互。本實(shí)施例中,應(yīng)用服務(wù)器110的數(shù)量為多個(gè),可在請(qǐng)求消息中攜帶對(duì)應(yīng)應(yīng)用服務(wù)器110的唯一性標(biāo)記,節(jié)點(diǎn)服務(wù)器130根據(jù)請(qǐng)求消息連接至對(duì)應(yīng)的應(yīng)用服務(wù)器110進(jìn)行數(shù)據(jù)交互??蓪?yīng)用服務(wù)器110部署在多個(gè)不同用戶(hù)的服務(wù)器節(jié)點(diǎn)上,主要把并發(fā)的壓力分擔(dān)到用戶(hù)的服務(wù)器上,防止單點(diǎn)的性能瓶頸。
網(wǎng)關(guān)服務(wù)器120實(shí)現(xiàn)資源統(tǒng)一管理與調(diào)度。網(wǎng)關(guān)服務(wù)器120主要用于接收應(yīng)用服務(wù)器110的請(qǐng)求消息并轉(zhuǎn)發(fā),激發(fā)節(jié)點(diǎn)服務(wù)器130反向連接應(yīng)用服務(wù)器110,實(shí)現(xiàn)數(shù)據(jù)通信。在一個(gè)實(shí)施例中,網(wǎng)關(guān)服務(wù)器120的數(shù)量為多個(gè),以避免平臺(tái)的單節(jié)點(diǎn)失效問(wèn)題。應(yīng)用服務(wù)器110采集多個(gè)網(wǎng)關(guān)服務(wù)器120的服務(wù)器狀態(tài),并根據(jù)服務(wù)器狀態(tài)選取最優(yōu)網(wǎng)關(guān)服務(wù)器,將請(qǐng)求消息發(fā)送至最優(yōu)網(wǎng)關(guān)服務(wù)器。服務(wù)器狀態(tài)具體可包括網(wǎng)關(guān)服務(wù)器120的負(fù)荷狀態(tài)和通信狀態(tài)等,根據(jù)服務(wù)器狀態(tài)選取最優(yōu)網(wǎng)關(guān)服務(wù)器發(fā)送請(qǐng)求消息,提高平臺(tái)的請(qǐng)求處理效率。
此外,網(wǎng)關(guān)服務(wù)器120接收到請(qǐng)求消息后,還對(duì)請(qǐng)求消息進(jìn)行合法性驗(yàn)證,并在驗(yàn)證通過(guò)后轉(zhuǎn)發(fā)請(qǐng)求消息至節(jié)點(diǎn)服務(wù)器130。可預(yù)先設(shè)置協(xié)議標(biāo)識(shí)的合法標(biāo)準(zhǔn),將合法標(biāo)準(zhǔn)與接收的協(xié)議數(shù)據(jù)包中的協(xié)議標(biāo)識(shí)進(jìn)行比較,若協(xié)議標(biāo)識(shí)符合合法標(biāo)準(zhǔn),則從該協(xié)議數(shù)據(jù)包中提取的請(qǐng)求消息的合法性驗(yàn)證通過(guò),進(jìn)行消息轉(zhuǎn)發(fā)。通過(guò)對(duì)請(qǐng)求消息進(jìn)行合法性驗(yàn)證,避免非合法用戶(hù)進(jìn)行數(shù)據(jù)處理操作,提高了平臺(tái)的數(shù)據(jù)處理安全性。
節(jié)點(diǎn)服務(wù)器130是整個(gè)平臺(tái)的主要組成部分,構(gòu)成了計(jì)算資源池和存儲(chǔ)資源池。在一個(gè)實(shí)施例中,節(jié)點(diǎn)服務(wù)器130的數(shù)量為多個(gè),進(jìn)一步地,網(wǎng)關(guān)服務(wù)器120和多個(gè)節(jié)點(diǎn)服務(wù)器130組成ldfs(lightweightdistributedfilesystem,輕量級(jí)分布式文件系統(tǒng)),利用ldfs實(shí)現(xiàn)了對(duì)存儲(chǔ)資源池的管理。網(wǎng)關(guān)服務(wù)器120監(jiān)控多個(gè)節(jié)點(diǎn)服務(wù)器130的狀態(tài)信息,并根據(jù)狀態(tài)信息對(duì)多個(gè)節(jié)點(diǎn)服務(wù)器130進(jìn)行負(fù)載均衡處理選取最優(yōu)節(jié)點(diǎn)服務(wù)器,將請(qǐng)求消息發(fā)送至最優(yōu)節(jié)點(diǎn)服務(wù)器。狀態(tài)信息具體可包括節(jié)點(diǎn)服務(wù)器130的訪問(wèn)負(fù)荷狀態(tài),以及與應(yīng)用服務(wù)器110的通信狀態(tài)等。負(fù)載均衡處理即是根據(jù)采集的狀態(tài)信息進(jìn)行篩選獲取狀態(tài)最優(yōu)的節(jié)點(diǎn)服務(wù)器,例如選取負(fù)載少且通信狀態(tài)好的節(jié)點(diǎn)服務(wù)器作為最優(yōu)節(jié)點(diǎn)服務(wù)器。根據(jù)狀態(tài)信息選取最優(yōu)節(jié)點(diǎn)服務(wù)器與應(yīng)用服務(wù)器110進(jìn)行數(shù)據(jù)交互,同樣可提高平臺(tái)的請(qǐng)求處理效率。
當(dāng)用戶(hù)發(fā)送文件操作請(qǐng)求進(jìn)行文件操作時(shí),可根據(jù)請(qǐng)求消息在多個(gè)節(jié)點(diǎn)服務(wù)器130進(jìn)行創(chuàng)建文件夾、獲取目錄文件結(jié)構(gòu)、文件上傳、文件下載、更改目錄名字、更改文件名字、刪除文件夾和刪除文件等操作。當(dāng)用戶(hù)發(fā)送數(shù)據(jù)運(yùn)算請(qǐng)求進(jìn)行數(shù)據(jù)運(yùn)算操作時(shí),可根據(jù)請(qǐng)求消息在多個(gè)節(jié)點(diǎn)服務(wù)器130進(jìn)行上傳計(jì)算原子、啟動(dòng)計(jì)算原子、獲取原子計(jì)算結(jié)果和啟動(dòng)服務(wù)計(jì)算原子等操作。應(yīng)用接入到平臺(tái)后,能通過(guò)協(xié)議啟動(dòng)計(jì)算原子分析存儲(chǔ)于平臺(tái)中的文件數(shù)據(jù)。
在一個(gè)實(shí)施例中,網(wǎng)關(guān)服務(wù)器120通過(guò)ganglia系統(tǒng)監(jiān)控多個(gè)節(jié)點(diǎn)服務(wù)器130的狀態(tài)信息,和/或網(wǎng)關(guān)服務(wù)器120通過(guò)mysql集群對(duì)多個(gè)節(jié)點(diǎn)服務(wù)器130進(jìn)行負(fù)載均衡處理。以網(wǎng)關(guān)服務(wù)器120同時(shí)通過(guò)ganglia系統(tǒng)監(jiān)控節(jié)點(diǎn)服務(wù)器130的狀態(tài)信息,以及通過(guò)mysql集群對(duì)節(jié)點(diǎn)服務(wù)器130進(jìn)行負(fù)載均衡處理為例,可在網(wǎng)關(guān)服務(wù)器120設(shè)置ganglia系統(tǒng)和負(fù)載均衡模塊,資源的分配與協(xié)調(diào)由負(fù)載均衡模塊和ganglia系統(tǒng)負(fù)責(zé),以響應(yīng)應(yīng)用服務(wù)器110的存儲(chǔ)和計(jì)算請(qǐng)求。
進(jìn)一步地,在一個(gè)實(shí)施例中,當(dāng)請(qǐng)求消息為數(shù)據(jù)存儲(chǔ)請(qǐng)求時(shí),網(wǎng)關(guān)服務(wù)器120選取至少兩個(gè)最優(yōu)節(jié)點(diǎn)服務(wù)器,并根據(jù)請(qǐng)求消息提取得到數(shù)據(jù)存入選取的最優(yōu)節(jié)點(diǎn)服務(wù)器中。數(shù)據(jù)存儲(chǔ)請(qǐng)求具體可以是創(chuàng)建文件夾和文件上傳等請(qǐng)求。在用戶(hù)進(jìn)行數(shù)據(jù)上傳存儲(chǔ)時(shí),對(duì)數(shù)據(jù)進(jìn)行備份存儲(chǔ)保證數(shù)據(jù)的高可用性。本實(shí)施例中,網(wǎng)關(guān)服務(wù)器120將提取的數(shù)據(jù)存入最優(yōu)節(jié)點(diǎn)服務(wù)器的相同物理路徑,通過(guò)多副本機(jī)制把數(shù)據(jù)自動(dòng)備份到不同節(jié)點(diǎn)可以保證文件的安全和備份,通過(guò)控制流和數(shù)據(jù)流分開(kāi)的方式,大大提高了高并發(fā)網(wǎng)絡(luò)數(shù)據(jù)傳輸時(shí)的負(fù)載均衡度。文件分布在不同節(jié)點(diǎn)位置的唯一性,讓計(jì)算所產(chǎn)生的計(jì)算數(shù)據(jù)具備唯一性,使得在用戶(hù)獲取計(jì)算數(shù)據(jù)時(shí),平臺(tái)能快速定位數(shù)據(jù)所處的位置,從而實(shí)現(xiàn)大數(shù)據(jù)環(huán)境下計(jì)算向數(shù)據(jù)的遷移。
應(yīng)用服務(wù)器110與網(wǎng)關(guān)服務(wù)器120之間的控制流通過(guò)建立的長(zhǎng)連接進(jìn)行傳輸。網(wǎng)關(guān)服務(wù)器120與節(jié)點(diǎn)服務(wù)器130之間的控制流是由具體應(yīng)用業(yè)務(wù)驅(qū)動(dòng)的短連接進(jìn)行傳輸。最終通過(guò)協(xié)議的層層傳遞,實(shí)現(xiàn)節(jié)點(diǎn)服務(wù)器130與應(yīng)用服務(wù)器110的反向短連接通道,完成數(shù)據(jù)信息流轉(zhuǎn)通道。使用標(biāo)準(zhǔn)的agw協(xié)議進(jìn)行數(shù)據(jù)的流通,數(shù)據(jù)流轉(zhuǎn)采用控制流和數(shù)據(jù)流分離的方式,不再讓數(shù)據(jù)通過(guò)網(wǎng)關(guān)服務(wù)器120進(jìn)行傳輸,而讓?xiě)?yīng)用服務(wù)器110與內(nèi)網(wǎng)節(jié)點(diǎn)服務(wù)器130直接傳輸數(shù)據(jù)。這樣網(wǎng)關(guān)服務(wù)器120只需處理用戶(hù)的控制信息,從而避免網(wǎng)關(guān)服務(wù)器120因傳輸大量數(shù)據(jù)而成為系統(tǒng)瓶頸。同時(shí)平臺(tái)不再像傳統(tǒng)方式以api(applicationprogramminginterface,應(yīng)用程序編程接口)的方式向用戶(hù)提供資源服務(wù),而是在應(yīng)用程序所在的終端機(jī)器上駐留應(yīng)用服務(wù)器110來(lái)監(jiān)聽(tīng)用戶(hù)的服務(wù)請(qǐng)求。這樣,應(yīng)用程序的開(kāi)發(fā)者就可以使用任何語(yǔ)言采用socket通信方式與應(yīng)用服務(wù)器110建立連接,并按照協(xié)議向其傳輸服務(wù)請(qǐng)求,實(shí)現(xiàn)用戶(hù)編程的語(yǔ)言無(wú)關(guān)性。
上述輕量級(jí)分布式計(jì)算平臺(tái),建立應(yīng)用服務(wù)器110、網(wǎng)關(guān)服務(wù)器120和節(jié)點(diǎn)服務(wù)器130之間的agw協(xié)議通信,使得輕量級(jí)分布式計(jì)算平臺(tái)不受語(yǔ)言限制,只需按照agw協(xié)議的標(biāo)準(zhǔn)即可進(jìn)行數(shù)據(jù)的操作,確保了計(jì)算靈活性。應(yīng)用服務(wù)器110與節(jié)點(diǎn)服務(wù)器130直接傳輸數(shù)據(jù),避免了在進(jìn)行大量數(shù)據(jù)交換時(shí)網(wǎng)關(guān)服務(wù)器因傳輸大量數(shù)據(jù)而成為系統(tǒng)瓶頸,可以有效地對(duì)大數(shù)據(jù)應(yīng)用進(jìn)行處理。
在一個(gè)實(shí)施例中,一種輕量級(jí)分布式計(jì)算平臺(tái)的數(shù)據(jù)處理方法,基于上述輕量級(jí)分布式計(jì)算平臺(tái)實(shí)現(xiàn)。如圖2所示,該方法包括以下步驟:
步驟s110:應(yīng)用服務(wù)器接收根據(jù)agw協(xié)議傳輸?shù)膮f(xié)議數(shù)據(jù)包,對(duì)協(xié)議數(shù)據(jù)包進(jìn)行提取得到請(qǐng)求消息。
agw協(xié)議的格式包括協(xié)議長(zhǎng)度、協(xié)議標(biāo)識(shí)和加密后的協(xié)議內(nèi)容。agw協(xié)議是該平臺(tái)文件系統(tǒng)的數(shù)據(jù)進(jìn)行流轉(zhuǎn)的標(biāo)準(zhǔn),通過(guò)該協(xié)議保證數(shù)據(jù)傳輸?shù)恼_性和完整性,agw協(xié)議適用于支持socket通信的語(yǔ)言接入。請(qǐng)求消息可包括文件操作請(qǐng)求和數(shù)據(jù)運(yùn)算請(qǐng)求兩大類(lèi)。
步驟s120:應(yīng)用服務(wù)器將請(qǐng)求消息發(fā)送至網(wǎng)關(guān)服務(wù)器。
網(wǎng)關(guān)服務(wù)器實(shí)現(xiàn)資源統(tǒng)一管理與調(diào)度。網(wǎng)關(guān)服務(wù)器主要用于接收應(yīng)用服務(wù)器的請(qǐng)求消息并轉(zhuǎn)發(fā)。
步驟s130:網(wǎng)關(guān)服務(wù)器將請(qǐng)求消息轉(zhuǎn)發(fā)至節(jié)點(diǎn)服務(wù)器。
網(wǎng)關(guān)服務(wù)器轉(zhuǎn)發(fā)請(qǐng)求消息激發(fā)節(jié)點(diǎn)服務(wù)器反向連接應(yīng)用服務(wù)器。
步驟s140:節(jié)點(diǎn)服務(wù)器根據(jù)請(qǐng)求消息反向連接至應(yīng)用服務(wù)器進(jìn)行數(shù)據(jù)交互。
節(jié)點(diǎn)服務(wù)器根據(jù)請(qǐng)求消息與應(yīng)用服務(wù)器建立反向連接,實(shí)現(xiàn)數(shù)據(jù)通信。
此外,步驟s120之后,步驟s130之前,該方法還可包括網(wǎng)關(guān)服務(wù)器對(duì)請(qǐng)求消息進(jìn)行合法性驗(yàn)證的步驟,在驗(yàn)證通過(guò)后進(jìn)行步驟s130。通過(guò)對(duì)請(qǐng)求消息進(jìn)行合法性驗(yàn)證,避免非合法用戶(hù)進(jìn)行數(shù)據(jù)處理操作,提高了平臺(tái)的數(shù)據(jù)處理安全性。
在一個(gè)實(shí)施例中,網(wǎng)關(guān)服務(wù)器的數(shù)量為多個(gè),步驟s120包括步驟122和步驟124。
步驟122:采集多個(gè)網(wǎng)關(guān)服務(wù)器的服務(wù)器狀態(tài),并根據(jù)服務(wù)器狀態(tài)選取最優(yōu)網(wǎng)關(guān)服務(wù)器。
服務(wù)器狀態(tài)具體可包括網(wǎng)關(guān)服務(wù)器的負(fù)荷狀態(tài)和通信狀態(tài)等。
步驟124:將請(qǐng)求消息發(fā)送至最優(yōu)網(wǎng)關(guān)服務(wù)器。
根據(jù)服務(wù)器狀態(tài)選取最優(yōu)網(wǎng)關(guān)服務(wù)器發(fā)送請(qǐng)求消息,提高平臺(tái)的請(qǐng)求處理效率。
在一個(gè)實(shí)施例中,節(jié)點(diǎn)服務(wù)器的數(shù)量為多個(gè),步驟s130包括步驟132和步驟134。
步驟132:監(jiān)控多個(gè)節(jié)點(diǎn)服務(wù)器的狀態(tài)信息,并根據(jù)狀態(tài)信息對(duì)多個(gè)節(jié)點(diǎn)服務(wù)器進(jìn)行負(fù)載均衡處理選取最優(yōu)節(jié)點(diǎn)服務(wù)器。
狀態(tài)信息可包括節(jié)點(diǎn)服務(wù)器的訪問(wèn)負(fù)荷狀態(tài),以及與應(yīng)用服務(wù)器的通信狀態(tài)等。
步驟134:將請(qǐng)求消息發(fā)送至最優(yōu)節(jié)點(diǎn)服務(wù)器。
根據(jù)狀態(tài)信息選取最優(yōu)節(jié)點(diǎn)服務(wù)器與應(yīng)用服務(wù)器進(jìn)行數(shù)據(jù)交互,同樣可提高平臺(tái)的請(qǐng)求處理效率。
進(jìn)一步地,在一個(gè)實(shí)施例中,步驟132包括:通過(guò)ganglia系統(tǒng)監(jiān)控多個(gè)節(jié)點(diǎn)服務(wù)器的狀態(tài)信息;根據(jù)狀態(tài)信息通過(guò)mysql集群對(duì)多個(gè)節(jié)點(diǎn)服務(wù)器進(jìn)行負(fù)載均衡處理,選取得到最優(yōu)節(jié)點(diǎn)服務(wù)器。
可在網(wǎng)關(guān)服務(wù)器設(shè)置ganglia系統(tǒng)和負(fù)載均衡模塊,資源的分配與協(xié)調(diào)由負(fù)載均衡模塊和ganglia系統(tǒng)負(fù)責(zé),以響應(yīng)應(yīng)用服務(wù)器的存儲(chǔ)和計(jì)算請(qǐng)求。
上述輕量級(jí)分布式計(jì)算平臺(tái)的數(shù)據(jù)處理方法,建立應(yīng)用服務(wù)器、網(wǎng)關(guān)服務(wù)器和節(jié)點(diǎn)服務(wù)器之間的agw協(xié)議通信,使得輕量級(jí)分布式計(jì)算平臺(tái)不受語(yǔ)言限制,只需按照agw協(xié)議的標(biāo)準(zhǔn)即可進(jìn)行數(shù)據(jù)的操作,確保了計(jì)算靈活性。應(yīng)用服務(wù)器與節(jié)點(diǎn)服務(wù)器直接傳輸數(shù)據(jù),避免了在進(jìn)行大量數(shù)據(jù)交換時(shí)網(wǎng)關(guān)服務(wù)器因傳輸大量數(shù)據(jù)而成為系統(tǒng)瓶頸,可以有效地對(duì)大數(shù)據(jù)應(yīng)用進(jìn)行處理。
以上所述實(shí)施例的各技術(shù)特征可以進(jìn)行任意的組合,為使描述簡(jiǎn)潔,未對(duì)上述實(shí)施例中的各個(gè)技術(shù)特征所有可能的組合都進(jìn)行描述,然而,只要這些技術(shù)特征的組合不存在矛盾,都應(yīng)當(dāng)認(rèn)為是本說(shuō)明書(shū)記載的范圍。
以上所述實(shí)施例僅表達(dá)了本發(fā)明的幾種實(shí)施方式,其描述較為具體和詳細(xì),但并不能因此而理解為對(duì)發(fā)明專(zhuān)利范圍的限制。應(yīng)當(dāng)指出的是,對(duì)于本領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進(jìn),這些都屬于本發(fā)明的保護(hù)范圍。因此,本發(fā)明專(zhuān)利的保護(hù)范圍應(yīng)以所附權(quán)利要求為準(zhǔn)。