对象存储分布式代理-go初学者的开源练手项目

这篇具有很好参考价值的文章主要介绍了对象存储分布式代理-go初学者的开源练手项目。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

最近写了一个go语言练手项目osproxy和osproxy-grpc,代码已完全开源到github。

相信不少接触go语言的读者,都是被它"极简协程",“高并发”,"高性能"的特性所吸引,我也不例外,想着学完之后,能快速上手享受一把。

但当我看完基本语法,想找个练手项目时,才发现github上大部分都是博客/后台管理系统之类的,这些项目都是经验丰富的工程师快速迁移经验,写出来的go代码,对初学者不太友好;甚至不少博主推荐Docker/k8s这样的大项目,看的让人心里直打退堂鼓。

我也才接触go语言不久,明白初学者想快速实践,但找不到靠谱项目的心情,所以我希望这个基于go语言,非博客,非后台管理系统的项目能满足你的需求。

我之前有写过C++练手项目TinyWebServer,被不少人喷,也让不少人入了服务器开发的门,所以完全不要担心osproxy这个项目会很复杂,但也不要担心项目让你学不到什么东西。

正如之前很多人对TinyWebServer的评价,osproxy同样是一个"麻雀虽小又五脏俱全"的项目。

osproxy是一个使用Go语言开发的对象存储分布式代理(object-storage-distributed-proxy),可以作为文件存储微服务,支持docker一键部署,包括但不限于以下功能:

  • 分布式uid及秒传,支持相同文件不同命名
  • 分片读写,大文件上传,merge接口不用等待数据合并,分片上传完直接下载
  • 异步任务,易扩展的event-handler,支持分片合并及其他文件处理任务
  • 统一封装,降低业务接入复杂度,业务侧只需要存储文件uid
  • 代理下载,不直接暴露底层存储厂商及格式
  • 支持集群部署,proxy模块处理不同机器的分片转发
  • 支持MinIO/腾讯COS/阿里OSS等对象存储,易于扩展
  • 支持Docker一键部署
    对象存储分布式代理-go初学者的开源练手项目

你能实践这些东西:

  • go:协程,sync包(waitgroup/once/mutex),channel,interface(可插拔组件注册)等
  • grpc:一元RPC,服务器流RPC,客户端流RPC,RPC拦截器,RPC数据转发
  • gin:路由组,http服务转发,文件数据转发,中间件
  • gorm:简单文件元数据的存储
  • nginx:http和grpc的反向代理,及证书自签
  • redis:数据缓存,缓存与DB双写,简单的服务注册与发现,分布式锁
  • uuid:分布式ID
  • docker:dockerfile的书写,docker一键部署等
    对象存储分布式代理-go初学者的开源练手项目

以上项目仅针对初学者,望知悉。

最后,感谢你能看到这里。文章来源地址https://www.toymoban.com/news/detail-476604.html

到了这里,关于对象存储分布式代理-go初学者的开源练手项目的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 常用分布式文件系统(对象存储)对比-SeaweedFS、Minio

    常用分布式文件系统,相对比较热门的有Minio,SeaweedFS,FastDFS,ceph。主要对比一下Minio,SeaweedFS。 什么是SeaweedFS? SeaweedFS是一种简单的、高度可扩展的分布式文件系统。SeaweedFS是一个非常优秀的由 Go语言开发的分布式存储开源项目。它是用来存储文件的系统,并且与使用的语言无

    2024年02月03日
    浏览(32)
  • 腾讯云COS云对象存储,分布式解决签名上传

    昨天写了阿里云的OSS对象存储签名上传,今天把腾讯云的也总结一下,非常简单,开通步骤和开通子用户并授权就不再多说,类比上一篇博客: https://blog.csdn.net/m0_57249797/article/details/124748601?spm=1001.2014.3001.5501 直接上后端签名代码: Maven依赖: 后端代码 postman发送请求获取签名链

    2024年02月12日
    浏览(17)
  • Linux 部署 MinIO 分布式对象存储 & 配置为 typora 图床

    MinIO 是一款高性能的对象存储系统,它可以用于大规模的 AI/ML、数据湖和数据库工作负载。它的 API 与Amazon S3 云存储服务完全兼容,可以在任何云或本地基础设施上运行。MinIO 是 开源软件 ,也提供商业许可和支持 MinIO 的特点有: 简单 :MinIO 的安装和使用都非常简单,只需

    2024年02月07日
    浏览(34)
  • 高性能分布式对象存储——MinIO实战操作(MinIO扩容)

    MinIO的基础概念和环境部署可以参考我之前的文章:高性能分布式对象存储——MinIO(环境部署) 官方文档:https://docs.min.io/docs/minio-admin-complete-guide.html MinIO Client (mc) 为 UNIX 命令(如 ls、cat、cp、mirror、diff、find 等)提供了现代替代方案。它支持文件系统和兼容 Amazon S3 的云存

    2023年04月26日
    浏览(32)
  • 首发 | FOSS分布式全闪对象存储系统白皮书

    1. 当前存储的挑战   随着云计算、物联网、5G、大数据、人工智能等新技术的飞速发展,数据呈现爆发式增长,预计到2025年中国数据量将增长到48.6ZB,超过80%为非结构化数据。 同时,数字经济正在成为我国经济发展的新引擎,数据已经成为企业的核心生产要素,数据即价值

    2024年02月12日
    浏览(21)
  • 学习笔记MinIo对象存储-Docker分布式集群搭建踩坑!

    ​ MinIO 是一款基于Go语言的高性能对象存储服务,在Github上已有39K+Star。它采用了Apache License v2.0开源协议,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等。 本文将使用 MinIO 来自建一个对象存储服务用于存储图片。 ​ M

    2024年02月11日
    浏览(21)
  • 【开发环境】(阿里云分布式文件系统)对象存储OSS 服务配置

    目录 一、开通 “对象存储 OSS” 服务: 二、创建 Bucket 容器: 1.创建一个Bucket: 三、使用 OSS 对象存储: 四、使用 SDK 访问 OSS: 1.安装使用 OSS SDK: 2.SDK 配置和测试:         进入阿里云官网: https://www.aliyun.com/ https://www.aliyun.com/         进入到 OSS 对象存储的管理平台

    2024年02月02日
    浏览(26)
  • Ceph分布式文件系统——文件系统MDS接口 块存储RDB接口 对象存储RGW接口

    服务端操作 1)在管理节点创建 mds 服务 2)查看各个节点的 mds 服务 3)创建存储池,启用 ceph 文件系统 ceph 文件系统至少需要两个 rados 池,一个用于存储数据,一个用于存储元数据。此时数据池就类似于文件系统的共享目录。 创建 cephfs,命令格式:ceph fs new FS_NAME CEPHFS_ME

    2024年02月16日
    浏览(19)
  • 云原生 | 从零开始,Minio 高性能分布式对象存储快速入手指南

    [ 点击 👉 关注「 全栈工程师修炼指南」公众号 ] 希望各位看友多多支持【关注、点赞、评论、收藏、投币】,助力每一个梦想。 【 WeiyiGeek Blog\\\'s - 花开堪折直须折,莫待无花空折枝  】 作者主页: 【 https://weiyigeek.top 】 博客地址: 【 https://blog.weiyigeek.top 】 作者答疑学习交

    2024年02月08日
    浏览(28)
  • 【seaweedfs】3、f4: Facebook’s Warm BLOB Storage System 分布式对象存储的冷热数据

    论文地址 Facebook的照片、视频和其他需要可靠存储和快速访问的二进制大型对象(BLOB)的语料库非常庞大,而且还在继续增长。随着BLOB占用空间的增加,将它们存储在我们传统的存储系统-- Haystack 中变得越来越低效。为了提高我们的存储效率(以Blob的有效复制系数衡量),我们检

    2024年02月11日
    浏览(18)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包