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

一種分布式存儲系統(tǒng)及其下載文件的方法

文檔序號:7776131閱讀:298來源:國知局
一種分布式存儲系統(tǒng)及其下載文件的方法
【專利摘要】本發(fā)明公開了一種分布式存儲系統(tǒng)及其下載文件的方法。該方法包括:元數(shù)據(jù)服務器接收客戶端請求下載文件的URL,通過文件ID查詢該文件的文件塊所在的數(shù)據(jù)服務器,選擇負荷較低的一臺文件塊所在數(shù)據(jù)服務器作為主文件下載服務器生成新URL;將客戶端請求的URL重定向到新URL;主文件下載服務器從其他數(shù)據(jù)服務器下載自身沒有的其他文件塊,并將該文件的文件塊按順序發(fā)送給客戶端。采用本發(fā)明,通過對外提供統(tǒng)一的URL指向元數(shù)據(jù)服務器,由元數(shù)據(jù)服務器重定向至主文件下載服務器,只需要使用一次HTTP請求即可下載所需的文件。
【專利說明】一種分布式存儲系統(tǒng)及其下載文件的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及云存儲系統(tǒng),尤其涉及一種分布式存儲系統(tǒng)及其下載文件的方法。
【背景技術(shù)】
[0002]在分布式存儲中,海量的文件分布于不同的計算機上,備份多份的文件,
[0003]通常會被切割成固定的大小存放在不同的服務器上,傳統(tǒng)下載文件方式通常是實現(xiàn)一個客戶端(基于分布式存儲API或私有通信協(xié)議),先向元數(shù)據(jù)服務器查詢文件存放位置,然后依次連接數(shù)據(jù)服務器進行下載文件。那么如果客戶端系統(tǒng)平臺不同,比如:win、linuX、mac、安卓等,則需要開發(fā)不同平臺上的客戶端。
[0004]使用HTTP(Hypertext transfer protocol,超文本傳送協(xié)議)方式從分布式存儲中下載文件可避免開發(fā)多個平臺的客戶端。中國專利CN201210559791.2公開了一種獲取云存儲文件的方法:用一臺服務器記錄所有文件的URL,客戶端先通過該服務器查詢某文件的URL,然后再通過查詢到的URL下載文件。這種方法存在以下缺陷:
[0005](I)客戶端需要請求兩次URL,增加客戶端操作的復雜度。
[0006](2)在分布式存儲領(lǐng)域中,文件可能備份有多份,而URL只能指向固定的某臺存放有該文件的服務器,當有多個客戶端想獲取同一個文件時,客戶端都向一臺服務器下載文件,只能利用I臺服務器的性能,從而造成負荷不均衡,無法發(fā)揮分布式存儲的優(yōu)勢。

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

[0007]有鑒于此,本發(fā)明要解決的技術(shù)問題是提供一種分布式存儲系統(tǒng)及其下載文件的方法,以使用一個通用的URL來獲取分布式存儲中的任意一個文件,且能合理分配客戶端請求,充分發(fā)揮分布式存儲優(yōu)勢。
[0008]本發(fā)明解決上述技術(shù)問題所采用的技術(shù)方案如下:
[0009]根據(jù)本發(fā)明的一個方面,提供的一種分布式存儲系統(tǒng),包括元數(shù)據(jù)服務器和至少一臺數(shù)據(jù)服務器,其中:
[0010]元數(shù)據(jù)服務器,用于接收客戶端請求下載文件的URL,根據(jù)URL中的文件ID查詢該文件的文件塊所在的數(shù)據(jù)服務器,選擇負荷較低的一臺文件塊所在數(shù)據(jù)服務器作為主文件下載服務器生成新URL,并將客戶端請求的URL重定向到新URL ;
[0011]數(shù)據(jù)服務器,用于當作為主文件下載服務器時,從其他數(shù)據(jù)服務器獲取自身沒有的其他文件塊,并將該文件的文件塊按順序發(fā)送給客戶端。
[0012]優(yōu)選地,元數(shù)據(jù)服務器進一步包括:
[0013]接收模塊,用于接收客戶端請求下載文件的URL ;
[0014]查詢模塊,用于根據(jù)URL中的文件ID查詢文件所在的數(shù)據(jù)服務器;
[0015]重定向模塊,選擇負荷較低的一臺文件塊所在數(shù)據(jù)服務器作為主文件下載服務器生成新URL,并將客戶端請求的URL重定向到新URL。
[0016]優(yōu)選地,元數(shù)據(jù)服務器還包括負荷監(jiān)測模塊,用于實時監(jiān)測所有數(shù)據(jù)服務器的下載任務和系統(tǒng)資源;相應地,重定向模塊具體用于:選擇負荷最低的一臺存儲該文件第一個文件塊的數(shù)據(jù)服務器為主文件下載服務器生成新URL,并將客戶端請求的URL重定向到新 URL。
[0017]優(yōu)選地,主文件下載服務器進一步包括:
[0018]文件位置獲取模塊,用于向元數(shù)據(jù)服務器獲取該文件中自身沒有的其他文件塊的存放位置;
[0019]文塊獲取模塊,連接其他文件塊所在的數(shù)據(jù)服務器,通過分布式存儲API下載其他文件塊;
[0020]發(fā)送模塊,用于將該文件的文件塊按順序通過HTTP協(xié)議將文件傳輸給客戶端。
[0021]優(yōu)選地,主文件下載服務器還包括文件塊刪除模塊,用于發(fā)送完文件塊后,當超過預定的刪除時間未收到該文件的下載請求時,刪除該文件中從其他數(shù)據(jù)服務器下載的文件塊。
[0022]優(yōu)選地,該系統(tǒng)還包括客戶端,用于向元數(shù)據(jù)服務器發(fā)送請求下載文件的URL,以及接收所述主文件下載服務器發(fā)送的文件。
[0023]根據(jù)本發(fā)明的另一個方面,提供的一種分布式存儲系統(tǒng)的文件下載方法包括:
[0024]元數(shù)據(jù)服務器接收客戶端請求下載文件的URL,其中URL包括文件ID ;
[0025]通過文件ID查詢該文件的文件塊所在的數(shù)據(jù)服務器,選擇負荷較低的一臺文件塊所在數(shù)據(jù)服務器作為主文件下載服務器生成新URL ;
[0026]將客戶端請求的URL重定向到新URL ;
[0027]主文件下載服務器從其他數(shù)據(jù)服務器下載自身沒有的其他文件塊,并將該文件的文件塊按順序發(fā)送給客戶端。
[0028]優(yōu)選地,選擇負荷較低的一臺文件塊所在數(shù)據(jù)服務器作為主文件下載服務器進一步包括:
[0029]獲取存放該文件的文件塊所在的所有數(shù)據(jù)服務器;
[0030]獲取所有數(shù)據(jù)服務器的下載任務及系統(tǒng)資源;
[0031]選擇負荷最低一臺數(shù)據(jù)服務器為主文件下載服務器。
[0032]優(yōu)選地,主文件下載服務器從其他數(shù)據(jù)服務器下載自身沒有的其他文件塊,并將該文件的文件塊按順序發(fā)送給客戶端進一步包括:
[0033]主文件下載服務器向元數(shù)據(jù)服務器獲取該文件其他文件塊的存放位置;
[0034]連接其他文件塊所在的數(shù)據(jù)服務器,通過分布式存儲API下載其他文件塊;
[0035]依次讀取文件塊,將文件塊按順序通過HTTP協(xié)議將文件傳輸給客戶端。
[0036]優(yōu)選地,該方法之后還包括:
[0037]主文件下載服務器發(fā)送完文件塊后,如果超過預定的刪除時間未收到該文件的下載請求,則刪除該文件中從其他數(shù)據(jù)服務器下載的文件塊。
[0038]本發(fā)明實施例提供的分布式存儲系統(tǒng)及其下載文件的方法,通過對外提供統(tǒng)一的URL指向元數(shù)據(jù)服務器,由元數(shù)據(jù)服務器重定向至主文件下載服務器,只需要使用一次HTTP請求即可下載所需的文件。此外,當文件同時備份多份存放在不同的數(shù)據(jù)服務器上時,元數(shù)據(jù)服務器選擇負荷最小的數(shù)據(jù)服務器作為主文件下載服務器,從而合理分配客戶端請求,充分發(fā)揮分布式存儲的優(yōu)勢。【專利附圖】

【附圖說明】
[0039]圖1是本發(fā)明實施例提供的一種分布式存儲系統(tǒng)的結(jié)構(gòu)示意圖。
[0040]圖2是本發(fā)明優(yōu)選實施例提供的一種元數(shù)據(jù)服務器的模塊結(jié)構(gòu)圖。
[0041]圖3是本發(fā)明優(yōu)選實施例提供的一種數(shù)據(jù)服務器的模塊結(jié)構(gòu)圖。
[0042]圖4是本發(fā)明實施例提供的一種分布式存儲系統(tǒng)的文件下載方法流程圖。
[0043]圖5是本發(fā)明優(yōu)選實施例提供的一種單客戶端下載文件的方法流程圖。
[0044]圖6是本發(fā)明優(yōu)選實施例提供的一種多客戶端下載文件的方法流程圖。
【具體實施方式】
[0045]為了使本發(fā)明所要解決的技術(shù)問題、技術(shù)方案及有益效果更加清楚、明白,以下結(jié)合附圖和實施例,對本發(fā)明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0046]實施例一
[0047]如圖1所示為本發(fā)明實施例提供的一種分布式存儲系統(tǒng)的結(jié)構(gòu)示意圖,該系統(tǒng)包括元數(shù)據(jù)服務器10、至少一臺數(shù)據(jù)服務器20和客戶端30,其中:
[0048]元數(shù)據(jù)服務器10,用于接收客戶端30請求下載文件的URL,根據(jù)URL中的文件ID查詢文件的文件塊所在的數(shù)據(jù)服務器20,選擇負荷較低的一臺文件塊所在數(shù)據(jù)服務器20作為主文件下載服務器201生成新URL,并將客戶端30請求的URL重定向到新URL。
[0049]請參閱圖2,元數(shù)據(jù)服務器10進一步包括接收模塊101、查詢模塊102和重定向模塊103,其中:
[0050]接收模塊101,用于接收客戶端30請求下載文件的URL ;
[0051]查詢模塊102,用于根據(jù)URL中的文件ID查詢文件所在的數(shù)據(jù)服務器;
[0052]重定向模塊103,選擇負荷較低的一臺文件塊所在數(shù)據(jù)服務器作為主文件下載服務器生成新URL,并將客戶端請求的URL重定向到新URL。
[0053]作為本實施例的一種優(yōu)選方案,為了合理分配客戶端請求,重復發(fā)揮分布式存儲的優(yōu)勢,元數(shù)據(jù)服務器10還包括負荷監(jiān)測模塊104,用于實時監(jiān)測所有數(shù)據(jù)服務器的下載任務和系統(tǒng)資源;相應地,重定向模塊103具體用于:選擇負荷最低的一臺存儲該文件第一個文件塊的數(shù)據(jù)服務器為主文件下載服務器生成新URL,并將客戶端請求的URL重定向到新 URL。
[0054]數(shù)據(jù)服務器20,用于當作為主文件下載服務器時,從其他數(shù)據(jù)服務器20獲取自身沒有的其他文件塊,并將該文件的文件塊按順序發(fā)送給客戶端30。
[0055]請參閱圖3,當數(shù)據(jù)服務器20作為主文件下載服務器時進一步包括:
[0056]文件位置獲取模塊201,用于向元數(shù)據(jù)服務器獲取該文件中自身沒有的其他文件塊的存放位置;
[0057]文塊獲取模塊202,連接其他文件塊所在的數(shù)據(jù)服務器,通過分布式存儲API下載其他文件塊;
[0058]發(fā)送模塊203,用于將該文件的文件塊按順序通過HTTP協(xié)議將文件傳輸給客戶端。[0059]作為本實施例的另一種優(yōu)選方案,為了節(jié)省主文件下載服務器的系統(tǒng)資源,當數(shù)據(jù)服務器作為主文件下載服務器時還包括文件塊刪除模塊204,用于發(fā)送完文件塊后,當超過預定的刪除時間未收到該文件的下載請求時,刪除該文件中從其他數(shù)據(jù)服務器下載的文件塊。
[0060]客戶端30,用于向元數(shù)據(jù)服務器10發(fā)送請求下載文件的URL,以及接收主文件下載服務器發(fā)送的文件。
[0061]具體來說,客戶端30包括但不限于手機、平板電腦、電腦等智能終端。
[0062]本實施例的系統(tǒng),通過對外提供統(tǒng)一的URL指向元數(shù)據(jù)服務器,由元數(shù)據(jù)服務器重定向至主文件下載服務器,只需要使用一次HTTP請求即可下載所需的文件。此外,當文件同時備份多份存放在不同的數(shù)據(jù)服務器上時,元數(shù)據(jù)服務器選擇負荷最小的數(shù)據(jù)服務器作為主文件下載服務器,從而合理分配客戶端請求,充分發(fā)揮分布式存儲的優(yōu)勢。
[0063]實施例二
[0064]如圖4所示是本發(fā)明實施例提供的一種分布式存儲系統(tǒng)的文件下載方法流程圖,該方法包括:
[0065]S402、元數(shù)據(jù)服務器接收客戶端請求下載文件的URL,其中URL包括文件ID。
[0066]具體來說,所有的客戶端使用一個指向該元數(shù)據(jù)服務器URL來下載分布式存儲系統(tǒng)中的任意一個文件,該URL攜帶文件ID以區(qū)分要下載的文件。
[0067]S404、通過文件ID查詢該文件的文件塊所在的數(shù)據(jù)服務器,選擇負荷較輕的一臺文件塊所在數(shù)據(jù)服務器作為主文件下載服務器生成新URL。
[0068]具體來說,元數(shù)據(jù)服務器中存儲了數(shù)據(jù)的元信息,包括文件ID,文件的存儲位置(數(shù)據(jù)服務器及路徑)等信息。元數(shù)據(jù)服務器通過文件ID查詢該文件存儲在哪些數(shù)據(jù)服務器上,選擇負荷較輕的一臺文件塊所在數(shù)據(jù)服務器作為主文件下載服務器,并使用該主文件下載服務器IP生成新URL (地址指向主文件下載服務器)。
[0069]作為本實施例的一種優(yōu)選方案,為了合理分配客戶端請求,重復發(fā)揮分布式存儲的優(yōu)勢,可以選擇一臺存儲該文件第一個文件塊且負荷最低的數(shù)據(jù)服務器作為主文件下載服務器,具體包括:獲取存放該文件第一個文件塊的所有數(shù)據(jù)服務器;獲取所有數(shù)據(jù)服務器的下載任務及系統(tǒng)資源;選擇負荷最低一臺數(shù)據(jù)服務器為主文件下載服務器。
[0070]S406、將客戶端請求的URL重定向到新URL。
[0071]具體來說,本步驟使用重定向技術(shù),將客戶端請求的URL重定向到新URL,使得客戶端自動跳轉(zhuǎn)到新URL。
[0072]S408、主文件下載服務器從其他數(shù)據(jù)服務器下載自身沒有的其他文件塊,
[0073]并將該文件的文件塊按順序發(fā)送給客戶端。
[0074]具體來說,主文件下載服務器邊從其他數(shù)據(jù)服務器上下載文件,邊將已有的文件塊以http協(xié)議發(fā)送給客戶端。該步驟可以進一步包括:主文件下載服務器向元數(shù)據(jù)服務器獲取該文件其他文件塊的存放位置;連接其他文件塊所在的數(shù)據(jù)服務器,通過分布式存儲API下載其他文件塊;依次讀取文件塊,將文件塊按順序通過HTTP協(xié)議將文件傳輸給客戶端。
[0075]作為本實施例的一種優(yōu)選方案,為了節(jié)省主文件下載服務器的系統(tǒng)資源,該方法之后還包括:主文件下載服務器發(fā)送完文件塊后,如果超過預定的刪除時間未收到該文件的下載請求,則刪除該文件中從其他數(shù)據(jù)服務器下載的文件塊。
[0076]實施例三
[0077]如圖5所示是本發(fā)明優(yōu)選實施例提供的一種客戶端下載文件的方法流程圖,假設分布式存儲服務器中,客戶端為智能終端,元數(shù)據(jù)服務器IP地址為10.3.0.2,數(shù)據(jù)服務器IP為10.3.1.100~200。智能終端想下載文件ID為22的文件,該方法包括:
[0078]S1、在智能終端的瀏覽器上輸入URL。
[0079]具體來說,URL為HTTP://10.3.0.2/get?id=22指向元數(shù)據(jù)服務器獲取文件ID為22的文件。
[0080]S2、元數(shù)據(jù)服務器通過文件ID查詢該文件的文件塊所在的數(shù)據(jù)服務器,選擇負荷較輕的文件塊所在數(shù)據(jù)服務器I作為主文件下載服務器生成新URL。
[0081]具體來說,通過文件ID查詢到該文件分別存放在10.3.1.100(文件塊I)、10.3.1.101 (文件塊2),10.3.1.102 (文件塊3)上。選取10.3.1.100為主文件下載服務器。生成新 URL (HTTP://10.3.0.100/get?id=22)
[0082]作為本實施例的進一步優(yōu)選方案,元數(shù)據(jù)服務器查詢到的文件塊所在的服務器中,還可以進一步查詢之前是否存在該文件的下載請求,且下載請求時間在預定的刪除時間內(nèi),如果有,則直接將上次的主文件下載服務器作為本次的主文件下載服務器生成新URL。
[0083]S3、元數(shù)據(jù)服 務器將原URL重定向至新URL。
[0084]具體來說,元數(shù)據(jù)服務器將原URL(HTTP://10.3.0.2/get?id=22)重定向至新URL(HTTP://10.3.0.100/get?id=22)。
[0085]S4、智能終端的瀏覽器自動跳轉(zhuǎn)至新URL向數(shù)據(jù)服務器I請求下載文件。
[0086]S5、數(shù)據(jù)服務器I (10.3.1.100)收到請求后,同時執(zhí)行以下步驟:
[0087]S5.1、向元數(shù)據(jù)服務器獲取該文件的其他文件塊的存儲位置。
[0088]S5.2、連接數(shù)據(jù)服務器2和數(shù)據(jù)服務器3分別下載文件塊2和文件塊3。
[0089]S5.3、數(shù)據(jù)服務器I依次讀取文件塊1、以及步驟S5.2下載來的文件塊2和文件塊3,按順序以HTTP協(xié)議方式發(fā)送給智能終端。
[0090]需要說明的是,步驟S5.1和步驟S5.3是并行執(zhí)行的,可以邊從其他數(shù)據(jù)服務器上下載文件,邊將已有的文件塊按順序以http協(xié)議發(fā)送給智能終端。比如數(shù)據(jù)服務器I 一邊向智能終端發(fā)送文件塊2,一邊數(shù)據(jù)服務器3上下載文件塊3。
[0091]S6、數(shù)據(jù)服務器I發(fā)送完數(shù)據(jù)后,如果超過預定的刪除時間未收到下載該文件的請求,則刪除文件塊2和文件塊3。
[0092]實施例四
[0093]如圖6所示是本發(fā)明優(yōu)選實施例提供的一種客戶端下載文件的方法流程圖,假設客戶端為2個智能終端,智能終端A、B請求獲取同一個文件,且該文件備份2份,分布式存儲服務器中,元數(shù)據(jù)服務器IP地址為10.3.0.2,數(shù)據(jù)服務器IP為10.3.1.100~200。智能終端想下載文件ID為20的文件。該方法包括:
[0094]S1、在智能終端A、B的瀏覽器上都輸入URL。
[0095]具體來說,URL均為 ΗΤΤΡ://10.3.0.2/get?id=20。
[0096]S2、元數(shù)據(jù)服務器通過文件ID查詢到該文件的存放位置。[0097]具體來說,文件塊I存儲在數(shù)據(jù)服務器I和數(shù)據(jù)服務器4上(10.3.1.100、10.3.1.101)、文件塊2存儲在數(shù)據(jù)服務器2和數(shù)據(jù)服務器5(10.3.1.110,10.3.1.111)、文件塊3存儲在數(shù)據(jù)服務器3和數(shù)據(jù)服務器6 (10.3.1.120、10.3.1.121)。
[0098]收到第一個請求后,分配文件塊I所在的2臺數(shù)據(jù)服務器中下載任務及系統(tǒng)資源最小的(假設為10.3.1.100)為主文件下載服務器,將10.3.1.100的下載任務數(shù)修改為1,生成新 URL (HTTP://10.3.1.100/get?id=20)返回智能終端 A。
[0099]收到第二個請求,由于10.3.1.100的任務數(shù)為1,則選取10.3.1.101為主文件服務器,將10.3.1.101的下載任務數(shù)改為I,生成新URL (HTTP://10.3.1.101/get?id=20)返回智能終端B。
[0100]S3、元數(shù)據(jù)服務器將智能終端A和智能終端B分別重定向至數(shù)據(jù)服務器I和數(shù)據(jù)服務器4。
[0101]S4、智能終端A和智能終端B的瀏覽器分別自動跳轉(zhuǎn)至新URL。
[0102]S5、數(shù)據(jù)服務器I和數(shù)據(jù)服務器4收到請求后,同時執(zhí)行以下3個步驟:
[0103]S5.1、向元數(shù)據(jù)服務器獲取該文件的其他文件塊的存儲位置。
[0104]S5.2、連接數(shù)據(jù)服務器2和數(shù)據(jù)服務器3分別下載文件塊2和文件塊3。
[0105]S5.3、依次讀取本機文件ID為20的文件塊,并將數(shù)據(jù)以HTTP協(xié)議方式向智能終端發(fā)送。
[0106]S6、數(shù)據(jù)服務器I和數(shù)據(jù)服務器4發(fā)送完數(shù)據(jù)后,先將本機下載數(shù)改為0,如過超過預定的刪除時間未有請求來下載該文件,則刪除文件塊2和文件塊3,如果在預定的刪除時間內(nèi)又接收到該文件的下載請求(比 如智能終端C的下載請求),則直接執(zhí)行步驟S5.3將文件塊發(fā)送給智能終端。
[0107]本發(fā)明實施例提供的分布式存儲系統(tǒng)及其下載文件的方法,通過對外提供統(tǒng)一的URL指向元數(shù)據(jù)服務器,由元數(shù)據(jù)服務器重定向至主文件下載服務器,只需要使用一次HTTP請求即可下載所需的文件。此外,當文件同時備份多份存放在不同的數(shù)據(jù)服務器上時,元數(shù)據(jù)服務器選擇負荷最小的數(shù)據(jù)服務器作為主文件下載服務器,從而合理分配客戶端請求,充分發(fā)揮分布式存儲的優(yōu)勢。
[0108]以上參照【專利附圖】
附圖
【附圖說明】了本發(fā)明的優(yōu)選實施例,并非因此局限本發(fā)明的權(quán)利范圍。本領(lǐng)域技術(shù)人員不脫離本發(fā)明的范圍和實質(zhì)內(nèi)所作的任何修改、等同替換和改進,均應在本發(fā)明的權(quán)利范圍之內(nèi)。
【權(quán)利要求】
1.一種分布式存儲系統(tǒng),其特征在于,該系統(tǒng)包括元數(shù)據(jù)服務器和至少一臺數(shù)據(jù)服務器,其中: 元數(shù)據(jù)服務器,用于接收客戶端請求下載文件的URL,根據(jù)URL中的文件ID查詢該文件的文件塊所在的數(shù)據(jù)服務器,選擇負荷較低的一臺文件塊所在數(shù)據(jù)服務器作為主文件下載服務器生成新URL,并將客戶端請求的URL重定向到新URL ; 所述數(shù)據(jù)服務器,用于當作為主文件下載服務器時,從其他數(shù)據(jù)服務器獲取自身沒有的其他文件塊,并將該文件的文件塊按順序發(fā)送給客戶端。
2.根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于,所述元數(shù)據(jù)服務器進一步包括: 接收模塊,用于接收客戶端請求下載文件的URL ; 查詢模塊,用于根據(jù)URL中的文件ID查詢文件所在的數(shù)據(jù)服務器; 重定向模塊,選擇負荷較低的一臺文件塊所在數(shù)據(jù)服務器作為主文件下載服務器生成新URL,并將客戶端請求的URL重定向到新URL。
3.根據(jù)權(quán)利要求2所述的系統(tǒng),其特征在于,所述元數(shù)據(jù)服務器還包括負荷監(jiān)測模塊,用于實時監(jiān)測所有數(shù)據(jù)服務器下載任務和系統(tǒng)資源;相應地, 所述重定向模塊具體用于:選擇負荷最低的存儲該文件第一個文件塊的數(shù)據(jù)服務器為主文件下載服務器生成新URL,并將客戶端請求的URL重定向到新URL。
4.根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于,所述主文件下載服務器進一步包括: 文件位置獲取模塊,用于向 元數(shù)據(jù)服務器獲取該文件中自身沒有的其他文件塊的存放位置; 文塊獲取模塊,連接其他文件塊所在的數(shù)據(jù)服務器,通過分布式存儲API下載其他文件塊; 發(fā)送模塊,用于將該文件的文件塊按順序通過HTTP協(xié)議將文件傳輸給客戶端。
5.根據(jù)權(quán)利要求4所述的系統(tǒng),其特征在于,所述主文件下載服務器還包括文件塊刪除模塊,用于發(fā)送完文件塊后,當超過預定的刪除時間未收到該文件的下載請求時,刪除該文件中從其他數(shù)據(jù)服務器下載的文件塊。
6.根據(jù)權(quán)利要求1-5任意一項權(quán)利要去所述的系統(tǒng),其特征在于,該系統(tǒng)還包括客戶端,用于向所述元數(shù)據(jù)服務器發(fā)送請求下載文件的URL,以及接收所述主文件下載服務器發(fā)送的文件。
7.一種分布式存儲系統(tǒng)的文件下載方法,其特征在于,該方法包括: 元數(shù)據(jù)服務器接收客戶端請求下載文件的URL,其中URL包括文件ID ; 通過所述文件ID查詢該文件的文件塊所在的數(shù)據(jù)服務器,選擇負荷較低的一臺文件塊所在數(shù)據(jù)服務器作為主文件下載服務器生成新URL ; 將所述客戶端請求的URL重定向到所述新URL ; 主文件下載服務器從其他數(shù)據(jù)服務器下載自身沒有的其他文件塊,并將該文件的文件塊按順序發(fā)送給客戶端。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于,所述選擇負荷較低的一臺文件塊所在數(shù)據(jù)服務器作為主文件下載服務器進一步包括: 獲取存放該文件的文件塊所在的所有數(shù)據(jù)服務器; 獲取所述所有數(shù)據(jù)服務器的下載任務及系統(tǒng)資源;選擇負荷最低一臺數(shù)據(jù)服務器為主文件下載服務器。
9.根據(jù)權(quán)利要求7所述的方法,其特征在于,所述主文件下載服務器從其他數(shù)據(jù)服務器下載自身沒有的其他文件塊,并將該文件的文件塊按順序發(fā)送給客戶端進一步包括: 主文件下載服務器向元數(shù)據(jù)服務器獲取該文件其他文件塊的存放位置; 連接其他文件塊所在的數(shù)據(jù)服務器,通過分布式存儲API下載其他文件塊; 依次讀取文件塊,將文件塊按順序通過HTTP協(xié)議將文件傳輸給客戶端。
10.根據(jù)權(quán)利要求7-9任意一項權(quán)利要求所述的方法,其特征在于,該方法之后還包括:主文件下載服務器發(fā)送完文件塊后,如果超過預定的刪除時間未收到該文件的下載請求,則刪除該文件中從其他數(shù)據(jù)服`務器下載的文件塊。
【文檔編號】H04L29/08GK103595782SQ201310557040
【公開日】2014年2月19日 申請日期:2013年11月11日 優(yōu)先權(quán)日:2013年11月11日
【發(fā)明者】鄭玨 申請人:中安消技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
开阳县| 延寿县| 且末县| 绵阳市| 额济纳旗| 海安县| 永年县| 邯郸县| 甘孜| 麦盖提县| 佛山市| 日喀则市| 普兰店市| 兴化市| 永胜县| 松阳县| 鹰潭市| 扬州市| 恭城| 禄丰县| 溆浦县| 永德县| 平罗县| 本溪市| 来宾市| 八宿县| 东乡族自治县| 峡江县| 库伦旗| 梅河口市| 封开县| 泉州市| 新营市| 友谊县| 墨江| 诏安县| 嘉善县| 宣汉县| 鸡泽县| 交口县| 宣武区|