[發明專利]一種數據文件上傳處理方法和系統在審
| 申請號: | 202210147890.3 | 申請日: | 2022-02-17 |
| 公開(公告)號: | CN114546955A | 公開(公告)日: | 2022-05-27 |
| 發明(設計)人: | 曾覺銳;丁佳軍;鄭祥康;葉正卿;魏美鐘 | 申請(專利權)人: | 杭州每刻科技有限公司 |
| 主分類號: | G06F16/16 | 分類號: | G06F16/16;G06F16/172;H04L67/06 |
| 代理公司: | 杭州裕陽聯合專利代理有限公司 33289 | 代理人: | 楊琪宇 |
| 地址: | 310000 浙江省杭州市*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 數據文件 上傳 處理 方法 系統 | ||
本發明公開了一種數據文件上傳處理方法和系統,所述方法包括入下步驟:獲取前端數據文件,將所述數據文件分片斷點上傳至OSS平臺;生成所述數據文件的上傳記錄列表,所述上傳記錄列表包含文件id;調用RocketMQ將所述文件id發送到異步消息服務器;所述異步消息服務器分批下載所述OSS平臺的數據文件,并執行所述數據文件的異步處理。所述方法和系統提供了一種異步處理的大數據的文件處理方法,可以降低系統的復雜度,并且使得消息上傳和數據處理之間進行行為解耦,提高了文件上傳系統的復用能力和水平擴容能力。
技術領域
本發明涉及大數據技術領域,特別涉及一種數據文件上傳處理方法和系統。
背景技術
目前現有的系統在使用的過程中,隨著業務的發展和用戶量的增加,越來越多的業務需要使用文件上傳數據以及數據量越來越大,當用戶上傳的文件過大時,服務器需要消耗大量的資源去響應。當前系統使用同步上傳和下載的方法,傳輸后立馬進行數據的解析和處理。也就是說,現有技術在上傳的數據量過大時,本就占用了服務器的大量內存,并且數據處理的時間并不會很短,常駐的大量內存和頻繁的數據處理拖慢整個服務器的響應,如果此時再有用戶上傳,會導致服務器內存溢出,進而導致服務崩潰。
發明內容
本發明其中一個發明目的在于提供一種數據文件上傳處理方法和系統,所述方法和系統提供了一種異步處理的大數據的文件處理方法,可以降低系統的復雜度,并且使得消息上傳和數據處理之間進行行為解耦,提高了文件上傳系統的復用能力和水平擴容能力。
本發明另一個發明目的在于提供一種數據文件上傳處理方法和系統,所述方法和系統利用輕量的RocketMQ作為消息中間件執行消息的異步發送,當異步消息服務器存在多個實例時,所述RocketMQ消息中間件監控topic的消費速度,當所述topic的消費速度過慢時通過所述RocketMQ執行水平擴容,從而提升消息的消息能力。
本發明另一個發明目的在于提供一種數據文件上傳處理方法和系統,所述方法和系統通過所述RocketMQ消息中間控制所述Consumer的消費線程數,從而可以保障所述Consumer在執行并行消費時,避免因為處理文件過多而導致服務器內存溢出的問題。
為了實現至少一個上述發明目的,本發明進一步提供一種數據文件上傳處理方法,所述方法包括入下步驟:
獲取前端數據文件,將所述數據文件分片斷點上傳至OSS平臺;
生成所述數據文件的上傳記錄列表,所述上傳記錄列表生成自身的文件列表id;
調用RocketMQ將所述文件列表id發送到異步消息服務器;
所述異步消息服務器根據所述文件列表id分批下載所述OSS平臺的數據文件,并執行所述數據文件的異步處理。
根據本發明其中一個較佳實施例,所述上傳記錄列表的生成方法包括:在文件上傳至所述OSS平臺時,獲取數據文件id,數據文件key、上傳對象、上傳時間、文件類型的主要字段內容,將所述主要字段內容保存于所述上傳記錄列表中。
根據本發明另一個較佳實施例,所述前端將數據文件上傳至OSS平臺的方法包括:當前端服務器上傳所述數據文件前,對所述數據文件生成通用唯一識別碼(UUID)作為所述數據文件的數據文件key,進一步調用OSS平臺的輸入對象接口(PutObject API)將所述數據文件和對應的數據文件key上傳至OSS平臺,并進一步將所述數據文件key通過前端接口傳入后端服務器。
根據本發明另一個較佳實施例,調用所述RocketMQ將所述文件id發送到異步消息服務器,用于執行數據文件解耦處理方法包括:創建RocketMQ消息對象,設置消費的主題(topic)為上傳任務(UploadTask),將所述消息對象發送到設置的消費主題隊列中,將所述消息對象的主體字段設置為文件列表id,通過生產者將所述消息發送給RocketMQ的broker后不再接受消息的發送結果。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于杭州每刻科技有限公司,未經杭州每刻科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202210147890.3/2.html,轉載請聲明來源鉆瓜專利網。





