[發(fā)明專利]可集群并支持多用戶同時(shí)上傳的文件傳輸方法和系統(tǒng)在審
| 申請(qǐng)?zhí)枺?/td> | 201510474496.0 | 申請(qǐng)日: | 2015-08-05 |
| 公開(kāi)(公告)號(hào): | CN105187489A | 公開(kāi)(公告)日: | 2015-12-23 |
| 發(fā)明(設(shè)計(jì))人: | 羅文 | 申請(qǐng)(專利權(quán))人: | 深圳聯(lián)友科技有限公司 |
| 主分類號(hào): | H04L29/08 | 分類號(hào): | H04L29/08 |
| 代理公司: | 深圳市順天達(dá)專利商標(biāo)代理有限公司 44217 | 代理人: | 高占元 |
| 地址: | 518031 廣東省深圳市*** | 國(guó)省代碼: | 廣東;44 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 集群 支持 多用戶 同時(shí) 上傳 文件傳輸 方法 系統(tǒng) | ||
技術(shù)領(lǐng)域
本發(fā)明涉及通信領(lǐng)域,尤其涉及一種可集群并支持多用戶同時(shí)上傳的文件傳輸方法和系統(tǒng)。
背景技術(shù)
在互聯(lián)網(wǎng)文件傳輸服務(wù)開(kāi)發(fā)任務(wù)中,存在程序中讀寫(xiě)IO頻繁而且上傳文件比較大對(duì)網(wǎng)絡(luò)吞吐量要求高的問(wèn)題,既要支撐高并發(fā)和高IO磁盤(pán)訪問(wèn),又要保證文件在集群部署中的一致性,同時(shí)還要降低程序異常退出、網(wǎng)絡(luò)帶寬使用,減少磁盤(pán)碎片等問(wèn)題。
落地文件,即保存到本地計(jì)算機(jī)磁盤(pán)上的文件。參考圖1,現(xiàn)有文件傳輸服務(wù)中,落地文件和文件傳輸服務(wù)在同一臺(tái)服務(wù)器上,讀寫(xiě)本地磁盤(pán)。因此,現(xiàn)有文件傳輸服務(wù)不支持集群,落地文件和文件傳輸服務(wù)部署在同一臺(tái)服務(wù)器,受服務(wù)器的性能和網(wǎng)絡(luò)IO影響,單機(jī)服務(wù)的處理能力得不到最大化,大量用戶并且大文件上傳時(shí),無(wú)法達(dá)到高并發(fā)高實(shí)時(shí)性的要求;另一方面由于當(dāng)服務(wù)器出現(xiàn)故障,服務(wù)重啟、系統(tǒng)掉電等異常情況出現(xiàn),沒(méi)有備用機(jī)器將導(dǎo)致文件傳輸功能無(wú)法使用。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問(wèn)題在于,針對(duì)現(xiàn)有技術(shù)的上述缺陷,提供一種可集群并支持多用戶同時(shí)上傳的文件傳輸方法和系統(tǒng)。
本發(fā)明解決其技術(shù)問(wèn)題所采用的技術(shù)方案是:構(gòu)造一種可集群并支持多用戶同時(shí)上傳的文件傳輸方法,基于文件傳輸系統(tǒng)實(shí)現(xiàn),該文件傳輸系統(tǒng)包括用戶層、接入層、存儲(chǔ)層,所述用戶層包括多個(gè)客戶端,所述接入層包括一個(gè)LVS模塊和多個(gè)文件傳輸模塊,所述存儲(chǔ)層包括集群部署的多個(gè)文件存儲(chǔ)模塊;
所述方法包括:
S1、用戶層中的客戶端發(fā)送上傳請(qǐng)求給接入層的LVS模塊,所述上傳請(qǐng)求用于請(qǐng)求向存儲(chǔ)層上傳新文件;
S2、接入層中的LVS模塊選擇一個(gè)文件傳輸模塊處理該上傳請(qǐng)求,文件傳輸模塊將該新文件切分為多個(gè)文件塊,并返回上傳響應(yīng)給對(duì)應(yīng)的客戶端;
S3、客戶端在接收到上傳響應(yīng)后,發(fā)送文件塊上傳請(qǐng)求給該文件傳輸模塊;
S4、文件傳輸模塊基于未上傳的文件塊,返回寫(xiě)文件塊響應(yīng)給對(duì)應(yīng)的客戶端;
S5、客戶端根據(jù)接收的寫(xiě)文件塊響應(yīng),發(fā)送對(duì)應(yīng)的文件塊給文件傳輸模塊;
S6、文件傳輸模塊選擇存儲(chǔ)層中的一個(gè)文件存儲(chǔ)模塊存儲(chǔ)該文件塊,并在文件塊存儲(chǔ)完畢后轉(zhuǎn)步驟S4繼續(xù)下一個(gè)文件塊的上傳直至所有的文件塊都上傳至存儲(chǔ)層。
在本發(fā)明所述的可集群并支持多用戶同時(shí)上傳的文件傳輸方法中,所述步驟S2中還包括:所述文件傳輸模塊將每個(gè)文件塊切分為多個(gè)更小的文件塊;所述步驟S4還包括:文件傳輸模塊根據(jù)客戶端的網(wǎng)絡(luò)類型和設(shè)備類型,經(jīng)由所述寫(xiě)文件塊響應(yīng)設(shè)定該客戶端單次上傳的較小文件塊的數(shù)量。
在本發(fā)明所述的可集群并支持多用戶同時(shí)上傳的文件傳輸方法中,每個(gè)文件塊包括三種狀態(tài):未上傳、正在上傳、已上傳,步驟S2中首次將文件切分時(shí)將所有文件塊的狀態(tài)都設(shè)置為未上傳,
所述步驟S4包括:從第1塊較小的文件塊開(kāi)始順序查找直到找到狀態(tài)為未上傳的一個(gè)或者多個(gè)文件塊,將該一個(gè)或者多個(gè)文件塊的位置信息包含在寫(xiě)文件塊響應(yīng)中下發(fā),并將該一個(gè)或者多個(gè)文件塊的狀態(tài)設(shè)置為正在上傳,如果某個(gè)較大的文件塊中的存在狀態(tài)為正在上傳的較小的文件塊,則將該較大的文件塊的狀態(tài)設(shè)置為正在上傳;
所述步驟S6中,在文件塊存儲(chǔ)完畢時(shí)將該文件塊的狀態(tài)設(shè)置為已上傳,如果某個(gè)較大的文件塊中的所有的較小的文件塊的狀態(tài)均為已上傳,則將該較大的文件塊的狀態(tài)設(shè)置為已上傳,如果所有的較大的文件塊的狀態(tài)都為已上傳,則發(fā)送上傳完畢指令給對(duì)應(yīng)的客戶端,結(jié)束。
在本發(fā)明所述的可集群并支持多用戶同時(shí)上傳的文件傳輸方法中,所述步驟S6所述的選擇存儲(chǔ)層中的一個(gè)文件存儲(chǔ)模塊存儲(chǔ)該文件塊包括:將所述存儲(chǔ)層中的文件存儲(chǔ)模塊順序編號(hào)為1-n,n為正整數(shù);將客戶端提交的文件MD5值經(jīng)過(guò)哈希算法整形化后的值對(duì)n取模,并將取模的結(jié)果記為k;選擇第k個(gè)文件存儲(chǔ)模塊存儲(chǔ)文件塊。
在本發(fā)明所述的可集群并支持多用戶同時(shí)上傳的文件傳輸方法中,所述步驟S2包括:
S20、LVS模塊接收到的上傳請(qǐng)求后,根據(jù)負(fù)載均衡算法確定一個(gè)文件傳輸模塊,并將該上傳請(qǐng)求轉(zhuǎn)發(fā)至該文件傳輸模塊;
S21、該文件傳輸模塊判斷所述上傳請(qǐng)求所對(duì)應(yīng)的新文件是否已上傳;
S22、如果新文件已上傳,則發(fā)送上傳完畢指令給對(duì)應(yīng)的客戶端,結(jié)束;
S23、如果新文件未上傳或正在上傳,則返回所述上傳響應(yīng)給對(duì)應(yīng)的客戶端。
本發(fā)明還公開(kāi)了一種可集群并支持多用戶同時(shí)上傳的文件傳輸系統(tǒng),包括:
用戶層,包括多個(gè)客戶端;
接入層,包括一個(gè)LVS模塊和多個(gè)文件傳輸模塊;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于深圳聯(lián)友科技有限公司,未經(jīng)深圳聯(lián)友科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510474496.0/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 一種集群調(diào)度呼叫業(yè)務(wù)中主叫終端信息顯示方法
- 更新網(wǎng)絡(luò)流量管理設(shè)備同時(shí)維持有效性
- 與集群調(diào)度系統(tǒng)進(jìn)行通信的方法、群集接入網(wǎng)關(guān)及系統(tǒng)
- 一種管理集群通信系統(tǒng)資源的方法
- 基于Kubernetes和OpenStack容器云平臺(tái)多集群構(gòu)建方法、介質(zhì)、設(shè)備
- 一種容災(zāi)系統(tǒng)、容災(zāi)處理方法、監(jiān)控節(jié)點(diǎn)和備份集群
- 一種ETCD集群恢復(fù)方法、系統(tǒng)、設(shè)備及計(jì)算機(jī)介質(zhì)
- 混合云場(chǎng)景下保證可用集群數(shù)量的方法、裝置及系統(tǒng)
- 一種集群拓?fù)涓路椒ā⑾到y(tǒng)、設(shè)備及計(jì)算機(jī)存儲(chǔ)介質(zhì)
- 集群切換方法、集群切換裝置、電子設(shè)備及可讀存儲(chǔ)介質(zhì)
- 一種多用戶映射信號(hào)的解調(diào)方法
- 多用戶數(shù)據(jù)包傳輸?shù)姆椒ā⒀b置及系統(tǒng)
- 用于為多用戶設(shè)備調(diào)度無(wú)線信道資源的系統(tǒng)和方法
- 群組注冊(cè)的方法、IP多媒體子系統(tǒng)和多用戶接入設(shè)備
- 基站的變換域多用戶檢測(cè)及干擾抑制裝置
- CDMA網(wǎng)絡(luò)多用戶檢測(cè)方法、裝置和多用戶檢測(cè)濾波器
- 一種終端及提高系統(tǒng)安全性方法
- 一種多用戶多輸入多輸出系統(tǒng)的信息反饋方法
- 一種空調(diào)器的智能控制方法及其系統(tǒng)
- 一種多用戶供應(yīng)鏈協(xié)同服務(wù)平臺(tái)





