项目简介
本项目基于Golang语言,借助微服务架构实现了简易的分布式云存储服务。运用Gin框架和go - micro框架提供HTTP接口和RPC接口,具备用户管理、文件管理和存储管理等功能,还能适配MySQL、Redis、Ceph和Kodo等多种存储方式,支持文件的上传、下载、分块上传、秒传等操作。
项目的主要特性和功能
- 用户管理:支持用户注册、登录以及获取用户信息。
- 文件管理:可进行文件上传、下载、分块上传和秒传,支持本地存储、Ceph存储和Kodo存储等多种存储途径。
- 存储管理:借助Ceph和Kodo等分布式存储系统实现文件的存储与访问。
- 微服务架构:采用go - micro框架完成服务注册、通信和调用。
- 接口类型:提供HTTP接口和RPC接口,便于客户端调用服务。
安装使用步骤
前提条件
用户已下载本项目的源码文件,且确保已安装Golang环境,并配置好项目所需的依赖库。
具体步骤
- 启动服务
- 在Windows系统下启动consul:
consul agent -dev
- 启动gateway服务:
go run service/apigw/main.go --registry=consul
- 启动account服务:
go run service/account/main.go --registry=consul
- 启动upload服务:
go run service/upload/main.go --registry=consul
- 启动download服务:
go run service/download/main.go --registry=consul
- 启动transfer服务:
go run service/transfer/main.go --registry=consul
- 在Windows系统下启动consul:
- 配置存储:依据项目配置,设置存储路径、Ceph和Kodo等存储系统的访问信息,Linux默认存储路径为
/data/tmp/
。 - 调用服务:通过HTTP接口或RPC接口调用服务,开展文件上传、下载等操作。
注意:此项目需要具备一定的Golang编程基础,以及对微服务架构和分布式存储系统有一定了解。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】