Java仿百度网盘,拿来学习,搞外快,都是极好的选择

本人花费半年的时间总结的《Java面试指南》已拿腾讯等大厂offer,已开源在github ,欢迎star!

本文GitHub https://github.com/OUYANGSIHAI/JavaInterview 已收录,这是我花了6个月总结的一线大厂Java面试总结,本人已拿大厂offer,欢迎star

原文链接:blog.ouyangsihai.cn >> Java仿百度网盘,拿来学习,搞外快,都是极好的选择

点击上方 **好好学java **,选择 **星标 **公众号

重磅资讯、干货,第一时间送达

今日推荐:

 个人原创100W+访问量博客:点击前往,查看更多

一、前言

在gitee和github里面基本上找不到一款好用、功能完善、且开放源码的网盘系统,有一些可以免费试用但是只提供安装包,于是在利用业务时间开发了一套轻量级且易于上手的网盘系统,主要基于目前主流的前后端分离和微服务架构模式开发,里面涉及很多的解决方案, 适合没有项目经验的同学学习

网盘系统的核心目的有两个:

  1. 提供客户端给业务系统集成,统一管理业务系统的文件;1. 提供在线协调办公、管理个人文件的功能。系统会陆续更新和完善一些功能。

    二、部署架构说明

三、技术栈说明

前端技术

  • ①vue.js+ElementUI 作为基础技术框架- ②WebUploader.js做切块上传框架

    后端技术

  • ①Maven+SpringBoot+SpringDataJPA作为基础架构- ②Dubbo+Zookeeper作为服务治理架构- ③Nacos作为配置中心- ④Redis做分布式缓存、过期监听- ⑤Zookeeper做分布式锁- ⑥WebSocket+Netty做消息推送- ⑦Solr做全文检索引擎- ⑧FastDFS做分布式文件系统- ⑨基于Redis+token+自定义注解实现接口幂等性

    四、功能说明

1、网盘系统

  • ①上传功能:主要是针对大文件的切块上传、秒传、文件夹上传- ②下载功能:主要是大文件的切块下载;多文件(夹)合并、压缩下载- ③文件分享:文件分享包括好友分享、私密链接分享、分享文件的转存- ④相册管理:可以建立不同的相册来管理图片,并且可以图片在线预览功能- ⑤回收站:删除的文件进入回收站,可以进行还原或者彻底删除- ⑥推送功能:主要是好友分享消息推送、过期消息推送、容量更新推送- ⑦分布式锁:主要是基于Zookeeper实现分布式锁,保证高并发情况下系统的数据安全- ⑧过期监听:主要是基于Redis过期事件实现监听功能,包括:分享失效监听、删除过期监听等- ⑨日志采集:通过AOP埋点的方式进行采集用户请求日志,并远程传输到日志服务端;自定义Dubbo的Filter实现 链路ID的生成- ⑩文件搜索:集成Solr框架实现全文搜索功能- ⑪文件存储:集成FastDFS框架实现文件分布式存储- ⑫其他琐碎功能:比如,复杂、移动、预览、删除、重命名、在线创建、在线编辑、编辑历史版本留痕等等- ⑬Office在线编辑: 后期更新- ⑭h5版本客户端: 预计4月25号更新- ⑮c/s版本客户端: 后期更新- ⑯业务系统API客户端:【 已经完成】- ⑰图片新增水印: 后期更新- ⑱图片在线裁剪: 后期更新

    2、后台系统

  • ①组件管理:主要管理文件的预览和编辑组件- ②类型管理:主要是管理文件的格式、对应的图标、对应的预览和编辑组件- ③日志管理:存储和展示业务系统的操作日志记录,并且可以根据 追踪ID来关联所有的日志信息

    五、项目地址

https://gitee.com/college996/zwz-netdisk

PS:如果觉得我的分享不错,欢迎大家随手点赞、在看。


推荐文章



原创电子书历时整整一年总结的 Java 面试 + Java 后端技术学习指南,这是本人这几年及校招的总结,各种高频面试题已经全部进行总结,按照章节复习即可,已经拿到了大厂offer。
原创思维导图扫码或者微信搜 程序员的技术圈子 回复 面试 领取原创电子书和思维导图。

原文地址:https://sihai.blog.csdn.net/article/details/112342871

本人花费半年的时间总结的《Java面试指南》已拿腾讯等大厂offer,已开源在github ,欢迎star!

本文GitHub https://github.com/OUYANGSIHAI/JavaInterview 已收录,这是我花了6个月总结的一线大厂Java面试总结,本人已拿大厂offer,欢迎star

原文链接:blog.ouyangsihai.cn >> Java仿百度网盘,拿来学习,搞外快,都是极好的选择


 上一篇
Excel大批量数据的导入和导出,如何做优化? Excel大批量数据的导入和导出,如何做优化?
点击上方 **好好学java **,选择 **星标 **公众号 重磅资讯、干货,第一时间送达 今日推荐: 个人原创100W+访问量博客:点击前往,查看更多 作者:Alben https://albenw.github.io/posts/d0
2021-04-04
下一篇 
你真的会正确使用日志吗? 你真的会正确使用日志吗?
点击上方 **好好学java **,选择 **星标 **公众号 重磅资讯、干货,第一时间送达 今日推荐: 个人原创100W+访问量博客:点击前往,查看更多 来源:frankiegao123 日志在应用程序中是非常非常重要的,好的日志信息能有
2021-04-04