專利名稱:一種文件傳輸方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)據(jù)傳輸技術(shù)領(lǐng)域,尤其涉及一種文件傳輸方法及系統(tǒng)。
背景技術(shù):
目前,數(shù)據(jù)集成總線負(fù)責(zé)各業(yè)務(wù)系統(tǒng)的業(yè)務(wù)主數(shù)據(jù)的統(tǒng)一集成,對外提供統(tǒng)一的共享數(shù)據(jù)視圖,數(shù)據(jù)集成總線的應(yīng)用降低了各系統(tǒng)的耦合度,降低各系統(tǒng)的復(fù)雜性。然而,數(shù)據(jù)集成總線最大的挑戰(zhàn)是在分布式環(huán)境中的應(yīng)用。在分布式環(huán)境中,由于網(wǎng)絡(luò)環(huán)境比較復(fù)雜,且網(wǎng)絡(luò)中的節(jié)點(diǎn)較多,因此,當(dāng)傳輸大文件時(shí),存在文件傳輸速度慢的問題,而且,如果在大文件的傳輸過程中網(wǎng)絡(luò)發(fā)生故障,那么,當(dāng)網(wǎng)絡(luò)恢復(fù)正常時(shí)需要重新傳輸大文件。因此,現(xiàn)有的文件傳輸技術(shù)的傳輸效率較低,當(dāng)需要重啟文件傳輸時(shí),又需要長時(shí)間占用傳輸網(wǎng)絡(luò)?!?br>
發(fā)明內(nèi)容
有鑒于此,本發(fā)明提供了一種文件傳輸方法及系統(tǒng),用以解決現(xiàn)有的文件傳輸技術(shù)的傳輸效率較低,當(dāng)需要重啟文件傳輸時(shí),又需要長時(shí)間占用傳輸網(wǎng)絡(luò)的問題,其技術(shù)方案如下一種文件傳輸方法,包括將待傳輸文件劃分為多個(gè)子文件;啟動多個(gè)線程傳輸所述多個(gè)子文件;將傳輸成功的子文件的信息記錄至記錄文件中??蛇x的,上述方法,還包括當(dāng)所述待傳輸文件傳輸失敗時(shí),根據(jù)所述記錄文件中的傳輸成功的子文件的信息,啟動未傳輸成功的子文件的傳輸。所述將待傳輸文件劃分為多個(gè)子文件的步驟包括將待傳輸文件劃分為多個(gè)子文件并為所述多個(gè)子文件中的每一個(gè)子文件分配唯一的子文件標(biāo)識。所述子文件的信息為所述子文件標(biāo)識。可選的,上述方法還包括當(dāng)從所述記錄文件中確定所述多個(gè)子文件均傳輸成功后,對所述多個(gè)子文件進(jìn)行合并處理,以還原所述待傳輸文件?!N文件傳輸系統(tǒng),包括劃分模塊、傳輸模塊和記錄模塊;所述劃分模塊,用于將待傳輸文件劃分為多個(gè)子文件;所述傳輸模塊,用于啟動多個(gè)線程傳輸所述多個(gè)子文件;所述記錄模塊,用于將傳輸成功的子文件的信息記錄至記錄文件??蛇x的,上述的文件傳輸系統(tǒng)還包括續(xù)傳模塊;所述續(xù)傳模塊,用于當(dāng)所述待傳輸文件傳輸失敗時(shí),根據(jù)所述記錄文件中傳輸成功的子文件的信息,啟動未傳輸成功的子文件的傳輸。所述劃分模塊包括第一劃分子模塊和標(biāo)識分配子模塊;所述第一劃分子模塊,用于將待傳輸文件劃分為多個(gè)子文件;所述標(biāo)識分配子模塊,用于為所述多個(gè)子文件中的每一個(gè)子文件分配唯一的子文件標(biāo)識。所述子文件的信息為所述子文件標(biāo)識??蛇x的,上述的文件傳輸系統(tǒng)還包括合并模塊;所述合并單元,用于當(dāng)從所述記錄文件中確定所述多個(gè)子文件均傳輸成功后,對所述多個(gè)子文件進(jìn)行合并處理,以還原所述待傳輸文件。·本發(fā)明提供的文件傳輸方法及系統(tǒng),將待傳輸文件劃分為多個(gè)子文件,啟動多個(gè)線程傳輸多個(gè)子文件。由于米用多線程同時(shí)傳輸待傳輸文件,因此,文件傳輸速度較快。同時(shí),本發(fā)明將傳輸成功的子文件的信息記錄在記錄文件中。如果網(wǎng)絡(luò)發(fā)生故障導(dǎo)致待傳輸文件不能正常傳輸,那么當(dāng)網(wǎng)絡(luò)恢復(fù)正常時(shí),只需根據(jù)記錄文件記錄的子文件的信息確定未傳輸?shù)淖游募鬏敿纯?。本發(fā)明不用重傳待傳輸文件,實(shí)現(xiàn)了斷點(diǎn)續(xù)傳。因此,本發(fā)明的文件傳輸效率較高,當(dāng)需要重啟文件傳輸時(shí),也不需要長時(shí)間占用傳輸網(wǎng)絡(luò)。
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。圖I為本發(fā)明實(shí)施例一提供的文件傳輸方法的流程示意圖;圖2為本發(fā)明實(shí)施例二提供的文件傳輸方法的流程示意圖;圖3為本發(fā)明實(shí)施例三提供的文件傳輸系統(tǒng)的結(jié)構(gòu)示意圖;圖4為本發(fā)明實(shí)施例四提供的文件傳輸系統(tǒng)的結(jié)構(gòu)示意圖。
具體實(shí)施例方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。實(shí)施例一本發(fā)明實(shí)施例一提供了一種文件傳輸方法,圖I為該方法的流程示意圖,本發(fā)明實(shí)施例一提供的方法可以包括Sll :將待傳輸文件劃分為多個(gè)子文件。在本實(shí)施例中,將待傳輸文件劃分為多個(gè)子文件可以具體為將待傳輸文件平均分為多個(gè)子文件,即每個(gè)子文件大小相同,且子文件的大小是由用戶設(shè)定的,同時(shí),為每個(gè)子文件分配一個(gè)唯一的標(biāo)識,每個(gè)子文件的標(biāo)識可以為子文件的序列號。本實(shí)施例并不限定劃分的每個(gè)子文件的大小相同,也可不同,只要是將待傳輸文件劃分為多個(gè)子文件都是本發(fā)明保護(hù)的范圍。S12 :啟動多個(gè)線程傳輸多個(gè)子文件。在本實(shí)施例,將多個(gè)子文件平均分配給多個(gè)線程,例如,子文件的數(shù)量為10個(gè),啟動5個(gè)線程傳輸10個(gè)子文件,每個(gè)線程傳輸兩個(gè)子文件,如果子文件為11個(gè),則其中I個(gè)線程傳輸3個(gè)子文件,其余4個(gè)線程,每個(gè)線程傳輸兩個(gè)子文件。當(dāng)然,本實(shí)施例并不限定于此,只要是將多個(gè)子文件分配給多個(gè)線程同時(shí)傳輸都是本發(fā)明保護(hù)的范圍。S13 :將傳輸成功的子文件的信息記錄至記錄文件中。在本實(shí)施例中,記錄文件可以是預(yù)先建立的,專門用于記錄傳輸成功的子文件的信息。記錄文件記錄的子文件的信息可以為為每個(gè)子文件分配的唯一的標(biāo)識,如子文件的序列號。本領(lǐng)域技術(shù)人員可以理解的,記錄文件也可以在第一次記錄傳輸成功的子文件的信息時(shí)建立,而不用預(yù)先建立。
·程:將待傳輸文件F劃分為10個(gè)子文件,分別為子文件Fl、F2、F3、F4、F5、F6、F7、F8、F9和F10,并為每個(gè)子文件分配一個(gè)唯一性標(biāo)識,分別為11、12、13、14、15、16、17、18、19和 110。啟動5 個(gè)線程 TI、T2、T3、T4 和 T5 同時(shí)傳輸子文件 Fl、F2、F3、F4、F5、F6、F7、F8、F9和F10,線程Tl傳輸子文件Fl、F2,線程T2傳輸子文件F3、F4,線程T3傳輸子文件F5、F6,線程T4傳輸子文件F7、F8,線程T5傳輸子文件F9、F10,當(dāng)線程Tl成功傳輸子文件Fl時(shí),將子文件Fl的標(biāo)識11記錄至記錄文件中,其它子文件同樣如此,只要成功傳輸,就將其標(biāo)識記錄至記錄文件中。啟動線程Tl、T2、T3、T4 和 T5 傳輸子文件 FI、F2、F3、F4、F5、F6、F7、F8、F9 和 FlO時(shí),子文件F1、F2的標(biāo)識11、12被寫入與線程Tl對應(yīng)的消息隊(duì)列Ql中,相應(yīng)的,子文件F3、F4的標(biāo)識13、14被寫入與線程T2對應(yīng)的消息隊(duì)列Q2中,子文件F5、F6的標(biāo)識15、16被寫入與線程T3對應(yīng)的消息隊(duì)列Q3中,子文件F7、F8的標(biāo)識17、18被寫入與線程T4對應(yīng)的消息隊(duì)列Q4中,子文件F1、F2的標(biāo)識19、IlO被寫入與線程T5對應(yīng)的消息隊(duì)列Q5中。下面以其中一個(gè)線程Tl傳輸子文件F1、F2為例說明線程傳輸子文件的具體過程從消息隊(duì)列Ql中獲取子文件Fl的標(biāo)識II,查詢標(biāo)識Il是否記錄在記錄文件中,如果是,則將標(biāo)識Il從消息隊(duì)列中刪除,如果否,則獲取與標(biāo)識Il對應(yīng)的子文件Fl并發(fā)送至接收方,當(dāng)接收方成功接收子文件Fl時(shí),將標(biāo)識Il記錄至記錄文件中,同時(shí)將標(biāo)識Il從消息隊(duì)列中刪除,再從消息隊(duì)列Ql中獲取子文件F2的標(biāo)識12,查詢標(biāo)識12是否記錄在記錄文件中,如果是,則將標(biāo)識12從消息隊(duì)列中刪除,如果否,則獲取與標(biāo)識12對應(yīng)的子文件F2并發(fā)送至接收方,當(dāng)接收方成功接收子文件F2時(shí),將標(biāo)識12記錄至記錄文件中,同時(shí)將標(biāo)識12從消息隊(duì)列中刪除。同樣以線程Tl傳輸子文件FI、F2為例,如果當(dāng)線程Tl傳輸子文件F2時(shí),網(wǎng)絡(luò)發(fā)生故障,此時(shí),子文件F2的傳輸中斷,由于子文件F2未成功傳輸,因此子文件F2的標(biāo)識12也就未在記錄文件中記錄,當(dāng)網(wǎng)絡(luò)恢復(fù)正常時(shí),通過查詢記錄文件可得知哪些子文件已傳輸成功,那些子文件傳輸失敗或未傳輸,從而進(jìn)一步獲取未傳輸或傳輸失敗的子文件的標(biāo)識,采用上述過程繼續(xù)傳輸。
本發(fā)明實(shí)施例一提供的文件傳輸方法,將待傳輸文件劃分為多個(gè)子文件,啟動多個(gè)線程傳輸多個(gè)子文件。由于米用多線程同時(shí)傳輸待傳輸文件,因此,文件傳輸速度較快。同時(shí),本發(fā)明將傳輸成功的子文件的信息記錄在記錄文件中。如果網(wǎng)絡(luò)發(fā)生故障導(dǎo)致待傳輸文件不能正常傳輸,那么當(dāng)網(wǎng)絡(luò)恢復(fù)正常時(shí),只需根據(jù)記錄文件記錄的子文件的信息確定未傳輸?shù)淖游募鬏敿纯?。本發(fā)明不用重傳待傳輸文件,實(shí)現(xiàn)了斷點(diǎn)續(xù)傳。因此,本發(fā)明的文件傳輸效率較高,當(dāng)需要重啟文件傳輸時(shí),也不需要長時(shí)間占用傳輸網(wǎng)絡(luò)。實(shí)施例二本發(fā)明實(shí)施例二提供了一種文件傳輸方法,圖2為該方法的流程示意圖,本發(fā)明實(shí)施例二提供的文件傳輸方法除了包括實(shí)施例一的步驟S11-S13之外,還可以包括S14 :判斷待傳輸文件是否傳輸成功,如果否,則執(zhí)行步驟S15 ;如果是,則執(zhí)行步驟 S16。
·
S15 :根據(jù)記錄文件中的傳輸成功的子文件的信息,啟動未傳輸成功的子文件的傳輸,然后轉(zhuǎn)入步驟S14。S16 :對多個(gè)子文件進(jìn)行合并處理,以還原待傳輸文件。在本實(shí)施例中,每個(gè)子文件通過offset和blocksize兩個(gè)屬性標(biāo)識,其中offset標(biāo)識子文件在待傳輸文件中的起始位置,blocksize標(biāo)識子文件的大小。當(dāng)子文件全部傳輸成功后,根據(jù)每個(gè)子文件的offset和blocksize將子文件合并,以還原待傳輸文件。當(dāng)成功還原待傳輸文件后,本發(fā)明實(shí)施例二提供的方法還可以包括S17 :將記錄文件刪除。本發(fā)明實(shí)施例二提供的文件傳輸方法,將待傳輸文件劃分為多個(gè)子文件,啟動多個(gè)線程傳輸多個(gè)子文件。由于米用多線程同時(shí)傳輸待傳輸文件,因此,文件傳輸速度較快。同時(shí),本發(fā)明將傳輸成功的子文件的信息記錄在記錄文件中。如果網(wǎng)絡(luò)發(fā)生故障導(dǎo)致待傳輸文件不能正常傳輸,那么當(dāng)網(wǎng)絡(luò)恢復(fù)正常時(shí),只需根據(jù)記錄文件記錄的子文件的信息確定未傳輸?shù)淖游募鬏敿纯?。本發(fā)明不用重傳待傳輸文件,實(shí)現(xiàn)了斷點(diǎn)續(xù)傳。因此,本發(fā)明的文件傳輸效率較高,當(dāng)需要重啟文件傳輸時(shí),也不需要長時(shí)間占用傳輸網(wǎng)絡(luò)。實(shí)施例三本發(fā)明實(shí)施例三提供了一種文件傳輸系統(tǒng),圖3為該系統(tǒng)的結(jié)構(gòu)示意圖,本發(fā)明實(shí)施例三提供的文件傳輸系統(tǒng)可以包括劃分模塊11、傳輸模塊12和記錄模塊13。其中,劃分模塊11,用于將待傳輸文件劃分為多個(gè)子文件;傳輸模塊12,用于啟動多個(gè)線程傳輸多個(gè)子文件;記錄模塊13,用于將傳輸成功的子文件的信息記錄至記錄文件中。本發(fā)明實(shí)施例三提供的文件傳輸系統(tǒng),將待傳輸文件劃分為多個(gè)子文件,啟動多個(gè)線程傳輸多個(gè)子文件。由于米用多線程同時(shí)傳輸待傳輸文件,因此,文件傳輸速度較快。同時(shí),本發(fā)明將傳輸成功的子文件的信息記錄在記錄文件中。如果網(wǎng)絡(luò)發(fā)生故障導(dǎo)致待傳輸文件不能正常傳輸,那么當(dāng)網(wǎng)絡(luò)恢復(fù)正常時(shí),只需根據(jù)記錄文件記錄的子文件的信息確定未傳輸?shù)淖游募鬏敿纯伞1景l(fā)明不用重傳待傳輸文件,實(shí)現(xiàn)了斷點(diǎn)續(xù)傳。因此,本發(fā)明的文件傳輸效率較高,當(dāng)需要重啟文件傳輸時(shí),也不需要長時(shí)間占用傳輸網(wǎng)絡(luò)。實(shí)施例四本發(fā)明實(shí)施例四提供了一種文件傳輸系統(tǒng),圖4為該系統(tǒng)的結(jié)構(gòu)示意圖,與實(shí)施例三不同的是,本發(fā)明實(shí)施例四提供的文件傳輸系統(tǒng)除了包括劃分模塊11、傳輸模塊12和記錄模塊13之外,還可以包括續(xù)傳模塊14。其中,續(xù)傳模塊14,用于當(dāng)待傳輸文件傳輸失敗時(shí),根據(jù)記錄文件中傳輸成功的子文件的信息,啟動未傳輸成功的子文件的傳輸。在本實(shí)施例中,劃分模塊11包括第一劃分子模塊和標(biāo)識分配子模塊,其中,第一劃分子模塊,用于將待傳輸文件劃分為多個(gè)子文件,標(biāo)識分配子模塊,用于為多個(gè)子文件中的每一個(gè)子文件分配唯一的子文件標(biāo)識。子文件的信息為子文件標(biāo)識。本實(shí)施例中的文件傳輸系統(tǒng)還可以包括合并模塊15,用于當(dāng)從記錄文件中確定多個(gè)子文件均傳輸成功后,對多個(gè)子文件進(jìn)行合并處理,以還原所述待傳輸文件。此外,本發(fā)明實(shí)施例四提供的文件傳輸系統(tǒng)還可以包括當(dāng)合并模塊15成功還原待傳輸文件后,將記錄文件刪除的刪除模塊16?!け景l(fā)明實(shí)施例四提供的文件傳輸系統(tǒng),將待傳輸文件劃分為多個(gè)子文件,啟動多個(gè)線程傳輸多個(gè)子文件。由于米用多線程同時(shí)傳輸待傳輸文件,因此,文件傳輸速度較快。同時(shí),本發(fā)明將傳輸成功的子文件的信息記錄在記錄文件中。如果網(wǎng)絡(luò)發(fā)生故障導(dǎo)致待傳輸文件不能正常傳輸,那么當(dāng)網(wǎng)絡(luò)恢復(fù)正常時(shí),只需根據(jù)記錄文件記錄的子文件的信息確定未傳輸?shù)淖游募鬏敿纯?。本發(fā)明不用重傳待傳輸文件,實(shí)現(xiàn)了斷點(diǎn)續(xù)傳。因此,本發(fā)明的文件傳輸效率較高,當(dāng)需要重啟文件傳輸時(shí),也不需要長時(shí)間占用傳輸網(wǎng)絡(luò)。為了描述的方便,描述以上裝置時(shí)以功能分為各種單元分別描述。當(dāng)然,在實(shí)施本發(fā)明時(shí)可以把各單元的功能在同一個(gè)或多個(gè)軟件和/或硬件中實(shí)現(xiàn)。通過以上的實(shí)施方式的描述可知,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件加必需的通用硬件平臺的方式來實(shí)現(xiàn)?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品可以存儲在存儲介質(zhì)中,如R0M/RAM、磁碟、光盤等,包括若干指令用以使得一臺計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例或者實(shí)施例的某些部分所述的方法。本說明書中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,各個(gè)實(shí)施例之間相同相似的部分互相參見即可,每個(gè)實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處。尤其,對于系統(tǒng)實(shí)施例而言,由于其基本相似于方法實(shí)施例,所以描述得比較簡單,相關(guān)之處參見方法實(shí)施例的部分說明即可。以上所描述的系統(tǒng)實(shí)施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上。可以根據(jù)實(shí)際的需要選擇其中的部分或者全部模塊來實(shí)現(xiàn)本實(shí)施例方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動的情況下,即可以理解并實(shí)施。本發(fā)明可用于眾多通用或?qū)S玫挠?jì)算系統(tǒng)環(huán)境或配置中。例如個(gè)人計(jì)算機(jī)、服務(wù)器計(jì)算機(jī)、手持設(shè)備或便攜式設(shè)備、平板型設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、置頂盒、可編程的消費(fèi)電子設(shè)備、網(wǎng)絡(luò)PC、小型計(jì)算機(jī)、大型計(jì)算機(jī)、包括以上任何系統(tǒng)或設(shè)備的分布式計(jì)算環(huán)境等等。本發(fā)明可以在由計(jì)算機(jī)執(zhí)行的計(jì)算機(jī)可執(zhí)行指令的一般上下文中描述,例如程序模塊。一般地,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)等等。也可以在分布式計(jì)算環(huán)境中實(shí)踐本發(fā)明,在這些分布式計(jì)算環(huán)境中,由通過通信網(wǎng)絡(luò)而被連接的遠(yuǎn)程處理設(shè)備來執(zhí)行任務(wù)。在分布式計(jì)算環(huán)境中,程序模塊可以位于包括存儲設(shè)備在內(nèi)的本地和遠(yuǎn)程計(jì)算機(jī)存儲介質(zhì)中。需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來,而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。以上所述僅是本發(fā)明的具體實(shí)施方式
,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也應(yīng)視為本發(fā)明的保護(hù)范圍。·
權(quán)利要求
1.一種文件傳輸方法,其特征在于,包括 將待傳輸文件劃分為多個(gè)子文件; 啟動多個(gè)線程傳輸所述多個(gè)子文件; 將傳輸成功的子文件的信息記錄至記錄文件中。
2.根據(jù)權(quán)利要求I所述的方法,其特征在于,還包括 當(dāng)所述待傳輸文件傳輸失敗時(shí),根據(jù)所述記錄文件中傳輸成功的子文件的信息,啟動未傳輸成功的子文件的傳輸。
3.根據(jù)權(quán)利要求I或2所述的方法,其特征在于,所述將待傳輸文件劃分為多個(gè)子文件的步驟包括 將待傳輸文件劃分為多個(gè)子文件并為所述多個(gè)子文件中的每一個(gè)子文件分配唯一的子文件標(biāo)識。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述子文件的信息為所述子文件標(biāo)識。
5.根據(jù)權(quán)利要求I所述的方法,其特征在于,還包括 當(dāng)從所述記錄文件中確定所述多個(gè)子文件均傳輸成功后,對所述多個(gè)子文件進(jìn)行合并處理,以還原所述待傳輸文件。
6.一種文件傳輸系統(tǒng),其特征在于,包括劃分模塊、傳輸模塊和記錄模塊; 所述劃分模塊,用于將待傳輸文件劃分為多個(gè)子文件; 所述傳輸模塊,用于啟動多個(gè)線程傳輸所述多個(gè)子文件; 所述記錄模塊,用于將傳輸成功的子文件的信息記錄至記錄文件中。
7.根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,還包括續(xù)傳模塊; 所述續(xù)傳模塊,用于當(dāng)所述待傳輸文件傳輸失敗時(shí),根據(jù)所述記錄文件中傳輸成功的子文件的信息,啟動未傳輸成功的子文件的傳輸。
8.根據(jù)權(quán)利要求6或7所述的系統(tǒng),其特征在于,所述劃分模塊包括第一劃分子模塊和標(biāo)識分配子模塊; 所述第一劃分子模塊,用于將待傳輸文件劃分為多個(gè)子文件; 所述標(biāo)識分配子模塊,用于為所述多個(gè)子文件中的每一個(gè)子文件分配唯一的子文件標(biāo)識。
9.根據(jù)權(quán)利要求8所述的系統(tǒng),其特征在于,所述子文件的信息為所述子文件標(biāo)識。
10.根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,還包括合并模塊; 所述合并模塊,用于當(dāng)從所述記錄文件中確定所述多個(gè)子文件均傳輸成功后,對所述多個(gè)子文件進(jìn)行合并處理,以還原所述待傳輸文件。
全文摘要
本發(fā)明提供了一種文件傳輸方法及系統(tǒng),可以將待傳輸文件劃分為多個(gè)子文件,然后啟動多個(gè)線程傳輸多個(gè)子文件并將傳輸成功的子文件的信息記錄至記錄文件中。由于采用多線程同時(shí)傳輸待傳輸文件,因此,文件傳輸速度較快。如果網(wǎng)絡(luò)發(fā)生故障導(dǎo)致待傳輸文件不能正常傳輸,那么當(dāng)網(wǎng)絡(luò)恢復(fù)正常時(shí),只需根據(jù)記錄文件記錄的子文件的信息確定未傳輸?shù)淖游募鬏敿纯?,本發(fā)明不用重傳文件,實(shí)現(xiàn)了斷點(diǎn)續(xù)傳。因此,本發(fā)明的文件傳輸效率高,當(dāng)需要重啟文件傳輸時(shí),也不用長時(shí)間占用傳輸網(wǎng)絡(luò)。
文檔編號H04L29/06GK102790771SQ20121026032
公開日2012年11月21日 申請日期2012年7月25日 優(yōu)先權(quán)日2012年7月25日
發(fā)明者姚建萍, 徐屏見, 李守鵬, 車帥, 閆鵬 申請人:山東中創(chuàng)軟件商用中間件股份有限公司