# xcloud **Repository Path**: zf233cn/xcloud ## Basic Information - **Project Name**: xcloud - **Description**: XCloud是一款基于SpringBoot构建的在线存储应用 网络存储、网盘、云盘,适合初学者,喜欢的小伙伴可以点击上边的⭐支持一下哦! - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 4 - **Forks**: 0 - **Created**: 2021-11-18 - **Last Updated**: 2025-02-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: SpringBoot, MyBatis, Redis, ElasticSearch, RabbitMQ ## README # XCloud
简约快速的在线存储应用
*
*
*
*
*
*
*
*
*
#### 后台管理界面
*
*
*
*
*
#### 邮箱/短信界面
*
*
### 本地开发运行部署
#### XCloud 项目
* 部署
* JDK版本: 1.8
* 下载zip直接解压或安装git后执行克隆命令 https://gitee.com/zhang-sexy/XCloud-Server.git
* 配置 MySQL、Redis、ElasticSearch、RabbitMQ、OSS、邮箱、QQ互联、腾讯防水墙、阿里 SMS 等信息
* 创建数据库 xcloud(utf-8)并运行 MySQL 脚本文件 xcloud.sql
* 修改各配置文件相应依赖IP、密码(默认本地127.0.0.1)
* 如需部署: jar包后台运行即可
* 部署注意(请先行浏览 pom 文件)
* ***可选项(可选项开关位于配置文件内 xcloud )***
* 集群部署(xcloud.cluster)
* 集群部署建议加一层 Nginx 做负载均衡及反向代理
* XCloud 支持快速集群部署,使用分布式锁(Redisson)保证数据一致性、依托分布式会话(SpringSession)保持 session
* true 开启集群部署模式、false 关闭集群部署模式
* RabbitMQ(xcloud.rabbit)
* 主要用途:去索引文档同步更新操作为消息发布、消费模式(解耦)
* 不开启:更新库内记录后同步更新 ElasticSearch 索引文档
* ***开启 RabbitMQ 的前提条件*** :开启 ElasticSearch 并保证其可用
* true 开启、false 关闭
* ElasticSearch(xcloud.es)
* 主要用途:使用 IK 分词插件,提供文件搜索、搜索结果高亮显示,用户网盘用量及分布统计等功能
* 不开启:使用 MySQL 模糊查询提供文件搜索功能
* true 开启、false 关闭
* ***必须项***
* XCloud 最基础的运行环境(单机)需满足以下条件
* 数据源 MySQL 可用
* 缓存 Redis(一个) 可用
* 文件服务 OSS 可用
* 邮箱服务可用,因注册后会发送注册验证邮件需要用户点击验证,缺失将无法注册登陆并使用
* 其他问题
* 配置文件 application-redis-cluster.yml(cluster) 及 application-redis-single.yml(single) 作用是什么
* 根据部署方式二选一即可,需在主配置文件中导入以启用
* 见明知意
* cluster:集群部署的 Redis 数据源配置
* single:单机部署的 Redis 数据源配置
* Redis 在 XCloud 中的作用如下:
* spring.redis
* 用户注册、验证码、登陆标志等
* MyBatis 二级缓存
* 分布式锁
* session 保持
* 防止多节点相同定时任务重复执行
* spring.cache-redis
* 文件上传缓存
* 如何使用(建议)
* 集群部署方式(cluster)
* spring.redis 请配置为多个服务器节点均可以访问到的 Redis 服务以保证其所属功能可用
* spring.cache-redis 请配置为本机 Redis 服务以保证文件缓存快速读写
* 单机部署方式(single)
* spring.redis 配置为本机 Redis 服务即可
* spring.cache-redis 配置为本机 Redis 服务即可
* 其他
* XCloud 所有静态文件位于项目路径下 static 文件夹中
* 定时任务包 cn.zf233.task
* 定时任务(一点钟至两点钟)
* 记录请求数量
* 刷新用户等级相关信息
* 移除持久化失败的文件记录
* 清空缓存
* 重建索引
* 移除用户废纸篓到期超时文件记录及持久化数据
* 此时间段 XCloud 拒绝用户访问以保证数据的正确性
#### Xcloud Android App 项目
* Xcloud App项目为安卓原生开发,目前已经下线
### 写在最后
由于技术有限,难免会有一些设计不合理之处,有好的想法,联系我即可
* 因目前精力有限,已暂停继续开发。
* 授权
* 商用需联系作者授权
* 联系方式
* QQ 1326284235
* 邮箱 1326284235@qq.com