此不再
--贅述。
[0175]圖9是本發(fā)明實(shí)施例提供的一種文件推送裝置結(jié)構(gòu)示意圖,參見圖9,該裝置包括:
[0176]監(jiān)控模塊901,用于監(jiān)控協(xié)調(diào)節(jié)點(diǎn)中的任務(wù);
[0177]確定模塊902,用于當(dāng)檢測到所述協(xié)調(diào)節(jié)點(diǎn)中添加了推送任務(wù)時,確定所述推送任務(wù)對應(yīng)的目的節(jié)點(diǎn);
[0178]判斷模塊903,用于判斷所述目的節(jié)點(diǎn)是否處于空閑狀態(tài);
[0179]發(fā)送模塊904,用于當(dāng)確定所述目的節(jié)點(diǎn)處于空閑狀態(tài)時,在未確定從推送節(jié)點(diǎn)的下載進(jìn)度的前提下,向所述從推送節(jié)點(diǎn)發(fā)送調(diào)度指令,所述從推送節(jié)點(diǎn)用于并行地下載所述推送任務(wù)對應(yīng)的多個子文件,對當(dāng)前下載到的多個子文件進(jìn)行合并,當(dāng)接收到所述調(diào)度指令時,獲取當(dāng)前合并得到的數(shù)據(jù)文件,向所述目的節(jié)點(diǎn)推送當(dāng)前合并得到的數(shù)據(jù)文件。
[0180]本發(fā)明實(shí)施例提供的裝置,通過客戶端要將數(shù)據(jù)文件推送至目的節(jié)點(diǎn)時,先將數(shù)據(jù)文件拆分為多個子文件,并行地將該多個子文件上傳至文件存儲節(jié)點(diǎn),縮短了上傳該數(shù)據(jù)文件所耗費(fèi)的時間,且在協(xié)調(diào)節(jié)點(diǎn)中添加與該多個子文件對應(yīng)的推送任務(wù),使得從推送節(jié)點(diǎn)能夠從文件存儲節(jié)點(diǎn)中,并行地下載多個子文件,也縮短了下載該數(shù)據(jù)文件所耗費(fèi)的時間,提高了推送效率。且該裝置確定目的節(jié)點(diǎn)處于空閑狀態(tài)時,無論該從推送節(jié)點(diǎn)是否已下載完該數(shù)據(jù)文件的所有子文件,該主推送節(jié)點(diǎn)即開始進(jìn)行調(diào)度,使得從推送節(jié)點(diǎn)獲取當(dāng)前合并得到的數(shù)據(jù)文件,向該目的節(jié)點(diǎn)推送當(dāng)前合并得到的數(shù)據(jù)文件,縮短了從該目的節(jié)點(diǎn)開始處于空閑狀態(tài)直至主推送節(jié)點(diǎn)發(fā)送調(diào)度指令的時間間隔,進(jìn)一步提高了推送效率。
[0181]需要說明的是:上述實(shí)施例提供的文件推送裝置在推送文件時,僅以上述各功能模塊的拆分進(jìn)行舉例說明,實(shí)際應(yīng)用中,可以根據(jù)需要而將上述功能分配由不同的功能模塊完成,即將客戶端、從推送節(jié)點(diǎn)和主推送節(jié)點(diǎn)的內(nèi)部結(jié)構(gòu)拆分成不同的功能模塊,以完成以上描述的全部或者部分功能。另外,上述實(shí)施例提供的文件推送裝置與文件推送方法實(shí)施例屬于同一構(gòu)思,其具體實(shí)現(xiàn)過程詳見方法實(shí)施例,這里不再贅述。
[0182]本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例的全部或部分步驟可以通過硬件來完成,也可以通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲于一種計(jì)算機(jī)可讀存儲介質(zhì)中,上述提到的存儲介質(zhì)可以是只讀存儲器,磁盤或光盤等。
[0183]以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【主權(quán)項(xiàng)】
1.一種文件推送方法,其特征在于,所述方法包括: 將待推送的數(shù)據(jù)文件拆分為多個子文件; 并行地將所述多個子文件上傳至文件存儲節(jié)點(diǎn); 在協(xié)調(diào)節(jié)點(diǎn)中添加與所述多個子文件對應(yīng)的推送任務(wù),使得所述協(xié)調(diào)節(jié)點(diǎn)根據(jù)所述推送任務(wù),確定所述數(shù)據(jù)文件的目的節(jié)點(diǎn),當(dāng)所述從推送節(jié)點(diǎn)檢測到所述協(xié)調(diào)節(jié)點(diǎn)中添加了所述推送任務(wù)時,確定所述數(shù)據(jù)文件的目的節(jié)點(diǎn),從所述文件存儲節(jié)點(diǎn)中,并行地下載所述多個子文件,對下載到的多個子文件進(jìn)行合并,在接收到主推送節(jié)點(diǎn)的調(diào)度指令時,向所述目的節(jié)點(diǎn)推送合并得到的數(shù)據(jù)文件。2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述并行地將所述多個子文件上傳至文件存儲節(jié)點(diǎn),包括: 并行地將所述多個子文件上傳至所述文件存儲節(jié)點(diǎn)的指定目錄下,使得所述從推送節(jié)點(diǎn)從所述指定目錄,并行地下載所述多個子文件。3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述并行地將所述多個子文件上傳至文件存儲節(jié)點(diǎn),包括: 為所述多個子文件中的每個子文件創(chuàng)建子上傳任務(wù),每個子上傳任務(wù)包含對應(yīng)子文件的名稱; 根據(jù)創(chuàng)建的多個子上傳任務(wù),并行地將所述多個子文件上傳至文件存儲節(jié)點(diǎn)。4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述多個子文件中的每個子文件包括順序標(biāo)識,所述順序標(biāo)識用于表示對應(yīng)子文件在所述數(shù)據(jù)文件中的順序。5.一種文件推送方法,其特征在于,所述方法包括: 監(jiān)控協(xié)調(diào)節(jié)點(diǎn)中的任務(wù); 當(dāng)檢測到所述協(xié)調(diào)節(jié)點(diǎn)中添加了推送任務(wù)時,確定所述推送任務(wù)對應(yīng)的目的節(jié)點(diǎn); 從文件存儲節(jié)點(diǎn)中,并行地下載所述推送任務(wù)對應(yīng)的多個子文件,所述多個子文件由客戶端對待推送的數(shù)據(jù)文件進(jìn)行拆分得到; 對當(dāng)前下載到的多個子文件進(jìn)行合并; 當(dāng)接收到主推送節(jié)點(diǎn)的調(diào)度指令時,向所述目的節(jié)點(diǎn)推送當(dāng)前合并得到的數(shù)據(jù)文件。6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述方法還包括: 如果在所述數(shù)據(jù)文件的子文件還未全部下載完成的情況下,接收到所述調(diào)度指令,則在向所述目的節(jié)點(diǎn)推送當(dāng)前合并得到的數(shù)據(jù)文件的同時,繼續(xù)下載剩余的子文件。7.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述從文件存儲節(jié)點(diǎn)中,并行地下載所述推送任務(wù)對應(yīng)的多個子文件,包括: 獲取所述推送任務(wù)中包含的文件路徑; 當(dāng)所述文件路徑為所述文件存儲節(jié)點(diǎn)中的指定目錄時,從所述文件存儲節(jié)點(diǎn)的指定目錄中,并行地下載所述多個子文件。8.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述多個子文件中的每個子文件包括順序標(biāo)識,所述順序標(biāo)識用于表示對應(yīng)子文件在所述數(shù)據(jù)文件中的順序;所述對當(dāng)前下載到的多個子文件進(jìn)行合并,包括: 根據(jù)當(dāng)前下載到的多個子文件的順序標(biāo)識,對當(dāng)前下載到的多個子文件進(jìn)行合并。9.一種文件推送方法,其特征在于,所述方法包括: 監(jiān)控協(xié)調(diào)節(jié)點(diǎn)中的任務(wù); 當(dāng)檢測到所述協(xié)調(diào)節(jié)點(diǎn)中添加了推送任務(wù)時,確定所述推送任務(wù)對應(yīng)的目的節(jié)點(diǎn); 判斷所述目的節(jié)點(diǎn)是否處于空閑狀態(tài); 當(dāng)確定所述目的節(jié)點(diǎn)處于空閑狀態(tài)時,在未確定從推送節(jié)點(diǎn)的下載進(jìn)度的前提下,向所述從推送節(jié)點(diǎn)發(fā)送調(diào)度指令,所述從推送節(jié)點(diǎn)用于并行地下載所述推送任務(wù)對應(yīng)的多個子文件,對當(dāng)前下載到的多個子文件進(jìn)行合并,當(dāng)接收到所述調(diào)度指令時,獲取當(dāng)前合并得到的數(shù)據(jù)文件,向所述目的節(jié)點(diǎn)推送當(dāng)前合并得到的數(shù)據(jù)文件。10.一種文件推送裝置,其特征在于,所述裝置包括: 拆分模塊,用于將待推送的數(shù)據(jù)文件拆分為多個子文件; 并行上傳模塊,用于并行地將所述多個子文件上傳至文件存儲節(jié)點(diǎn); 任務(wù)添加模塊,用于在協(xié)調(diào)節(jié)點(diǎn)中添加與所述多個子文件對應(yīng)的推送任務(wù),使得所述協(xié)調(diào)節(jié)點(diǎn)根據(jù)所述推送任務(wù),確定所述數(shù)據(jù)文件的目的節(jié)點(diǎn),當(dāng)所述從推送節(jié)點(diǎn)檢測到所述協(xié)調(diào)節(jié)點(diǎn)中添加了所述推送任務(wù)時,確定所述數(shù)據(jù)文件的目的節(jié)點(diǎn),從所述文件存儲節(jié)點(diǎn)中,并行地下載所述多個子文件,對下載到的多個子文件進(jìn)行合并,在接收到主推送節(jié)點(diǎn)的調(diào)度指令時,向所述目的節(jié)點(diǎn)推送合并得到的數(shù)據(jù)文件。11.根據(jù)權(quán)利要求10所述的裝置,其特征在于,所述并行上傳模塊用于并行地將所述多個子文件上傳至所述文件存儲節(jié)點(diǎn)的指定目錄下,使得所述從推送節(jié)點(diǎn)從所述指定目錄,并行地下載所述多個子文件。12.根據(jù)權(quán)利要求10所述的裝置,其特征在于,所述并行上傳模塊還用于為所述多個子文件中的每個子文件創(chuàng)建子上傳任務(wù);根據(jù)創(chuàng)建的多個子上傳任務(wù),并行地將所述多個子文件上傳至文件存儲節(jié)點(diǎn)。13.根據(jù)權(quán)利要求10所述的裝置,其特征在于,所述多個子文件中的每個子文件包括順序標(biāo)識,所述順序標(biāo)識用于表示對應(yīng)子文件在所述數(shù)據(jù)文件中的順序。14.一種文件推送裝置,其特征在于,所述裝置包括: 監(jiān)控模塊,用于監(jiān)控協(xié)調(diào)節(jié)點(diǎn)中的任務(wù); 確定模塊,用于當(dāng)檢測到所述協(xié)調(diào)節(jié)點(diǎn)中添加了推送任務(wù)時,確定所述推送任務(wù)對應(yīng)的目的節(jié)點(diǎn); 并行下載模塊,用于從文件存儲節(jié)點(diǎn)中,并行地下載所述推送任務(wù)對應(yīng)的多個子文件,所述多個子文件由客戶端對待推送的數(shù)據(jù)文件進(jìn)行拆分得到; 合并模塊,用于對當(dāng)前下載到的多個子文件進(jìn)行合并; 推送模塊,用于當(dāng)接收到主推送節(jié)點(diǎn)的調(diào)度指令時,向所述目的節(jié)點(diǎn)推送當(dāng)前合并得到的數(shù)據(jù)文件。15.根據(jù)權(quán)利要求14所述的裝置,其特征在于,所述并行下載模塊還用于如果在所述數(shù)據(jù)文件的子文件還未全部下載完成的情況下,接收到所述調(diào)度指令,則在向所述目的節(jié)點(diǎn)推送當(dāng)前合并得到的數(shù)據(jù)文件的同時,繼續(xù)下載剩余的子文件。16.根據(jù)權(quán)利要求14所述的裝置,其特征在于,所述并行下載模塊還用于獲取所述推送任務(wù)中包含的文件路徑;當(dāng)所述文件路徑為所述文件存儲節(jié)點(diǎn)中的指定目錄時,從所述文件存儲節(jié)點(diǎn)的指定目錄中,并行地下載所述多個子文件。17.根據(jù)權(quán)利要求14所述的裝置,其特征在于,所述多個子文件中的每個子文件包括順序標(biāo)識,所述順序標(biāo)識用于表示對應(yīng)子文件在所述數(shù)據(jù)文件中的順序; 所述合并模塊還用于根據(jù)當(dāng)前下載到的多個子文件的順序標(biāo)識,對當(dāng)前下載到的多個子文件進(jìn)行合并。18.一種文件推送裝置,其特征在于,所述裝置包括: 監(jiān)控模塊,用于監(jiān)控協(xié)調(diào)節(jié)點(diǎn)中的任務(wù); 確定模塊,用于當(dāng)檢測到所述協(xié)調(diào)節(jié)點(diǎn)中添加了推送任務(wù)時,確定所述推送任務(wù)對應(yīng)的目的節(jié)點(diǎn); 判斷模塊,用于判斷所述目的節(jié)點(diǎn)是否處于空閑狀態(tài); 發(fā)送模塊,用于當(dāng)確定所述目的節(jié)點(diǎn)處于空閑狀態(tài)時,在未確定從推送節(jié)點(diǎn)的下載進(jìn)度的前提下,向所述從推送節(jié)點(diǎn)發(fā)送調(diào)度指令,所述從推送節(jié)點(diǎn)用于并行地下載所述推送任務(wù)對應(yīng)的多個子文件,對當(dāng)前下載到的多個子文件進(jìn)行合并,當(dāng)接收到所述調(diào)度指令時,獲取當(dāng)前合并得到的數(shù)據(jù)文件,向所述目的節(jié)點(diǎn)推送當(dāng)前合并得到的數(shù)據(jù)文件。19.一種文件推送系統(tǒng),其特征在于,所述系統(tǒng)包括:客戶端、主推送節(jié)點(diǎn)、從推送節(jié)點(diǎn)、文件存儲節(jié)點(diǎn)、協(xié)調(diào)節(jié)點(diǎn)和目的節(jié)點(diǎn); 所述客戶端用于將待推送的數(shù)據(jù)文件拆分為多個子文件;并行地將所述多個子文件上傳至所述文件存儲節(jié)點(diǎn);在協(xié)調(diào)節(jié)點(diǎn)中添加與所述多個子文件對應(yīng)的推送任務(wù); 所述從推送節(jié)點(diǎn)用于監(jiān)控所述協(xié)調(diào)節(jié)點(diǎn)中的任務(wù);當(dāng)檢測到所述協(xié)調(diào)節(jié)點(diǎn)中添加了推送任務(wù)時,確定所述推送任務(wù)對應(yīng)的目的節(jié)點(diǎn);從所述文件存儲節(jié)點(diǎn)中,并行地下載所述多個子文件,對當(dāng)前下載到的多個子文件進(jìn)行合并; 所述主推送節(jié)點(diǎn)用于監(jiān)控所述協(xié)調(diào)節(jié)點(diǎn)中的任務(wù);當(dāng)檢測到所述協(xié)調(diào)節(jié)點(diǎn)中添加了推送任務(wù)時,確定所述推送任務(wù)對應(yīng)的目的節(jié)點(diǎn);判斷所述目的節(jié)點(diǎn)是否處于空閑狀態(tài);當(dāng)確定所述目的節(jié)點(diǎn)處于空閑狀態(tài)時,在未確定所述從推送節(jié)點(diǎn)的下載進(jìn)度的前提下,向所述從推送節(jié)點(diǎn)發(fā)送調(diào)度指令; 所述從推送節(jié)點(diǎn)還用于當(dāng)接收到所述調(diào)度指令時,向所述目的節(jié)點(diǎn)推送當(dāng)前合并得到的數(shù)據(jù)文件。
【專利摘要】本發(fā)明公開了一種文件推送方法、裝置和系統(tǒng),屬于網(wǎng)絡(luò)技術(shù)領(lǐng)域。該方法包括:將數(shù)據(jù)文件拆分為多個子文件;并行地將該多個子文件上傳至文件存儲節(jié)點(diǎn);在協(xié)調(diào)節(jié)點(diǎn)中添加與該多個子文件對應(yīng)的推送任務(wù),使得該從推送節(jié)點(diǎn)從該文件存儲節(jié)點(diǎn)中并行地下載該多個子文件,對下載到的多個子文件進(jìn)行合并,在接收到主推送節(jié)點(diǎn)的調(diào)度指令時,向該目的節(jié)點(diǎn)推送合并得到的數(shù)據(jù)文件。本發(fā)明縮短了上傳該數(shù)據(jù)文件所耗費(fèi)的時間,也縮短了下載該數(shù)據(jù)文件所耗費(fèi)的時間,提高了推送效率。
【IPC分類】H04L29/08, H04L29/06
【公開號】CN104967619
【申請?zhí)枴緾N201510336360
【發(fā)明人】羅如海
【申請人】深圳市騰訊計(jì)算機(jī)系統(tǒng)有限公司
【公開日】2015年10月7日
【申請日】2015年6月17日