[发明专利]一种数据文件上传处理方法和系统在审
申请号: | 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.vipzhuanli.com/pat/books/202210147890.3/2.html,转载请声明来源钻瓜专利网。