littlebot
Published on 2025-04-03 / 0 Visits
0

【源码】基于Golang的简易分布式云存储服务

项目简介

本项目基于Golang语言,借助微服务架构实现了简易的分布式云存储服务。运用Gin框架和go - micro框架提供HTTP接口和RPC接口,具备用户管理、文件管理和存储管理等功能,还能适配MySQL、Redis、Ceph和Kodo等多种存储方式,支持文件的上传、下载、分块上传、秒传等操作。

项目的主要特性和功能

  1. 用户管理:支持用户注册、登录以及获取用户信息。
  2. 文件管理:可进行文件上传、下载、分块上传和秒传,支持本地存储、Ceph存储和Kodo存储等多种存储途径。
  3. 存储管理:借助Ceph和Kodo等分布式存储系统实现文件的存储与访问。
  4. 微服务架构:采用go - micro框架完成服务注册、通信和调用。
  5. 接口类型:提供HTTP接口和RPC接口,便于客户端调用服务。

安装使用步骤

前提条件

用户已下载本项目的源码文件,且确保已安装Golang环境,并配置好项目所需的依赖库。

具体步骤

  1. 启动服务
    • 在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
  2. 配置存储:依据项目配置,设置存储路径、Ceph和Kodo等存储系统的访问信息,Linux默认存储路径为/data/tmp/
  3. 调用服务:通过HTTP接口或RPC接口调用服务,开展文件上传、下载等操作。

注意:此项目需要具备一定的Golang编程基础,以及对微服务架构和分布式存储系统有一定了解。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】