【技术实现步骤摘要】
一种基于分布式文件存储的网盘系统架构
[0001]本专利技术属于计算机软件领域,具体涉及一种基于分布式文件存储的网盘系 统架构。
技术介绍
[0002]随着信息技术的不断发展,各单位陆续建设了各种各样的业务信息系统, 然而,随着业务系统不断增多和用户使用量逐渐提升,一些文件存储和管理的 问题也逐渐暴露出来。首先,在应用系统逐渐投入使用后,系统产生的文件数 量将飞速增长,而针对海量文件的存储,传统磁盘支持的空间有限,在文件超 出容量后,扩展的磁盘数量和总容量受限。其次,不同应用产生的文件存储在 不同的目录或磁盘上,存在文件冗余,存储分散,不易管理的问题。最后,由 于应用系统间的数据隔离,文件在不同用户之间复用率低。
[0003]多业务系统产生的文件存储和管理是单位面临的一个难点问题。目前,主 要策略就是通过底层磁盘空间规划来达到各应用系统文件管理相对有序,并由 各系统自身进行文件维护。此外,文件数据作为单位的一项重要资源,主要通 过系统间接口调用的方式实现文件资源在不同用户间共享和传递,这种方式效 率低下,接口开发工作 ...
【技术保护点】
【技术特征摘要】
1.一种基于分布式文件存储的网盘系统架构,其特征在于,该架构包括如下4层:基础环境、存储和消息、网盘系统和客户端/浏览器;基础环境:采用通用的硬件服务器、操作系统、编译环境和开发环境,为上层存储、缓存、消息、应用提供运行支撑;存储和消息:采用分布式文件存储技术为海量文件的落地存储和冗余备份提供支持;采用关系数据库技术支持应用数据持久化,并使用旁路缓存技术提供数据缓存功能;采用消息队列实现服务间通信,以订阅发布的模式,实现消息在服务间异步传输,解耦不同服务间的业务功能调用,有效提高核心业务功能处理速度,非核心业务在空闲时再进行处理;网盘系统:是架构中核心业务实现层,按照业务功能,采用微服务架构将网盘系统划分不同的服务模块,各服务模块独立部署运行,采用RESTFUL风格接口,通过网关对外提供统一的文件上传、存储、管理、搜索、共享、回收、预览功能,实现目录和文件的树状分层结构;核心业务功能采用Feign Client同步调用方式进行通信,同步执行,共同协作,非核心业务采用消息队列实现异步调用、分散处理;客户端/浏览器:业务系统用户通过客户端/浏览器访问网盘系统,并基于http协议采用请求
‑
响应模式完成与服务端交互和数据传输。2.如权利要求1所述的基于分布式文件存储的网盘系统架构,其特征在于,网盘系统的文件上传包括分块上传,具体地,将一个大文件,按照固定大小,切分为多个小分块文件,并为每一个分块文件编号,表示该分块文件先后顺序,再将每一个分块作为独立文件通过http请求传输到服务器端;服务器端收到分块文件后,将每一个分块文件按确定的分块顺序缓存在一个临时目录,等待所有分块上传完成后,通过一个合并请求将所有分块合并为一个完整的大文件,并保存到分布式文件存储服务器上。3.如权利要求1所述的基于分布式文件存储的网盘系统架构,其特征在于,网盘系统的文件上传包括并行机制,具体地,针对大文件上传,客户端和服务器端可同时采用多线程并行工作方式进行分块上传。4.如权利要求1所述的基于分布式文件存储的网盘系统架构,其特征在于,网盘系统的文件上传包括断点续传,具体地,文件在上传出错失败后,直接从出错分块开始继续上传,不需要整个文件重新上传。5.如权利要求1所述的基于分布式文件存储的网盘系统架构,其特征在于,网盘系统的文件上传包括闪传,具体地,采用文件探测技术,即在文件上传前,发送一个http请求用于探测当前需要上传的文件在服务器端是否已经存在,若已经存在则直接返回上传成功,并添加数据记录,若不存在,则进行文件上传。6.如权利要求1
‑
5任一项所述的基于分布式文件存储的网盘系统架构,其特征在于,核心业务之间采用Feign Client同步调用方式进行通信,互相协作,业务之间形成强耦合;被调用方需按约定定义好相关服务接口和参数,并以sdk方式打包发布给服务调用方,调用方在加载sdk开发包后,调用相关接口方法将消息传递给被调用方,并等待被调用方业务处理和响应。7.如权利要求1
‑
【专利技术属性】
技术研发人员:叶蔚,张梦清,姜杉,
申请(专利权)人:北京计算机技术及应用研究所,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。