[发明专利]基于消息队列和fastDFS微服务架构的异步文件导出方法及系统有效
申请号: | 202010161073.4 | 申请日: | 2020-03-10 |
公开(公告)号: | CN111405020B | 公开(公告)日: | 2023-03-31 |
发明(设计)人: | 徐士强;魏金雷;杨继伟 | 申请(专利权)人: | 山东汇贸电子口岸有限公司 |
主分类号: | H04L67/06 | 分类号: | H04L67/06;H04L67/1097;H04L9/40;G06F16/182;G06F21/62 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 孙园园 |
地址: | 250100 山东省济南市*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 消息 队列 fastdfs 微服 架构 异步 文件 导出 方法 系统 | ||
本发明公开了一种基于消息队列和fastDFS微服务架构的异步文件导出方法及系统,属于文件管理技术领域,本发明要解决的技术问题为如何满足异步处理高并发情况下大数据量的文件导出,又不占用业务侧太多IO,提升系统稳定性,采用的技术方案为:该方法是通过认证授权模块、消息组装及推送模块、消息消费处理模块、文件异步生成及上传模块和异步下载模块完成对文件的异步生成及下载,通过消息队列完成分布式部署,进而实现各模块之间松耦合;具体如下:S1、用户在浏览器登录,向认证授权模块的授权认证服务请求认证授权;S2、认证授权通过后,用户选择需要导出的数据进行导出操作,消息组装及推送模块将消息自动根据业务进行区分处理,并组装消息。
技术领域
本发明涉及文件管理技术领域,具体地说是一种基于消息队列和fastDFS微服务架构的异步文件导出方法及系统。
背景技术
传统的同步导出下载虽然可以满足80%的文件导出需求,但是对于数据量大,业务拼接复杂的系统来说,等待时间较长甚至超时、用户体验较差、对系统服务实时压力较大等都是不可避免的。常用的java导出方式有poi和流式两种导出方式,通过poi方式导出,会实时占用大量内存,一旦有其他多线程并发就会出现内存溢出的场景,导致系统崩溃,而流式导出的方式虽然一定程度上可以满足当前需求的需要,但也是在实时占用系统的IO,很容易导致后续操作等待等问题。而异步文件生成及下载是基于微服务思想独立于业务模块之外单独运行,不对业务组件造成影响,通过业务类型、文件类型等将不同的业务场景进行逻辑分离处理,能让业务线程、文件异步生成线程在后台运行,没有等待时间,处理完成后通知前台进行展示下载即可,这种方式不仅大大降低了对业务组件的压力,而且提高了用户体验。其实这种场景在现实生活中也很常见,比如医院里面拍CT,做体检时的体检报告,都是延后去拿结果的。
微服务架构是最近几年新提出的一个概念,相较于传统的单体架构,微服务架构将单一架构的功能拆分成多个小型的具有完整业务功能的服务,服务之间通过API或者消息进行串联起来,同时各个微服务之间的开发、测试与部署都是独立进行,大大降低了系统之间的耦合程度,提高了系统的可扩展性。
消息队列则是被应用于众多系统中的常用技术,消息队列的异步化和松耦合机制,可以提升系统资源的利用率和系统的可扩展性,同时消息队列自带分布式和容灾特性,从而提升系统性能和容错能力。
现有的文件异步导出机制,是对微服务架构下的优化并不充分,故如何满足异步处理高并发情况下大数据量的文件导出,实现微服务架构下文件的生产、存储及异步下载,又不占用业务侧太多IO,减少对系统的实时压力,提升系统稳定性是目前亟待解决的技术问题。
专利号为CN107526635A的专利文献公开了一种数据异步导出方法,包括步骤1:在导出页面设置导出数据的筛选条件;步骤2、服务器根据步骤1提供的筛选条件查询并判断数据库里数据量大小,根据配置文件所设置的大数据阈值DOWNLOAD_SIZE决定是实时导出,还是邮件通知下载导出;步骤3:若数据库里数据为少量数据,则此少量数据采用实时导出方式;步骤4:若数据库里数据为大量数据,则将此大量数据生成导出文件,并存储在指定服务器中,发送下载链接至指定的邮件地址。但是该技术方案不能满足异步处理高并发情况下大数据量的文件导出需求。
专利号为CN103810238A的专利文献公开了一种基于异步处理的大数据量Excel文件导出方法,包括以下步骤:Excel辅助应用模块将Excel数据分成若干数据组;当应用系统向Excel辅助应用模块发送Excel数据导出请求时,Excel辅助应用模块向多个处理器提出Excel数据导出请求;每个处理器处理Excel数据导出请求时,都在指定存储路径新建一个Excel文件;多个Excel文件叠加构成的完整的Excel文件,用户在存储路径下查看并下载生成的Excel文件。但是该技术方案不能满足异步处理高并发情况下大数据量的文件导出需求。
发明内容
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东汇贸电子口岸有限公司,未经山东汇贸电子口岸有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010161073.4/2.html,转载请声明来源钻瓜专利网。