暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

分布式文件存储选型方案

盛桃云 2020-12-27
1275

微服务分布式系统开发中文件存储选型是一个基本上都会遇到的问题,例如可能会遇到选择云存储方案还是选择本地私有化部署存储方案。本文针对开发一个分布式文件子系统,介绍分布式文件存储选型的方案,只做简单的探讨,不做深入研究。

开发一个分布式文件子系统的好处有:

1、可以集中提供统一的配置参数,不需要每个微服务都分别做配置

2、可以集中提供统一的访问接口,不需要到处写文件读写的代码

3、可以统一控制文件的读写访问权限

4、可以根据租户上传的文件占用的磁盘空间收费


一、云存储方案

支持根据客户实际情况选用:

1、阿里云对象存储服务(Object Storage Service,OSS)

2、腾讯云对象存储 COS 服务

3、百度对象存储BOS


二、本地私有化部署存储方案

1、minio   - https://min.io/

a) Minio是GlusterFS创始人之一Anand Babu Periasamy发布新的开源项目。Minio兼容Amason的S3分布式对象存储项目,采用Golang实现,客户端支持Java,Python,Javacript, Golang语言。

b) 自称世界上最快的对象存储服务,参见 https://min.io/

MinIO is the world's fastest object storage server. With READ/WRITE speeds of 183 GB/s and 171 GB/s on standard hardware, object storage can operate as the primary storage tier for a diverse set of workloads ranging from Spark, Presto, TensorFlow, H2O.ai as well as a replacement for Hadoop HDFS.

c) 部署简单,并且支持docker部署,整合nginx简单(相比较,FastDFS部署较繁琐,整合nginx还需要插件)
d) 使用简单,入门文档丰富

   快速入门 https://docs.min.io/cn/

   java示例 https://github.com/minio/minio-java

   https://docs.min.io/cn/java-client-quickstart-guide.html

e)有Maven坐标,支持整合springboot
f)支持多租户

2、FastDFS
a)FastDFS是一个开源的轻量级分布式文件系统,国内大佬开发的,总体来说也是很优秀的开源项目
b)支持docker安装,但是安装相对比较费劲

c)支持整合springboot

大家根据产品的实际情况可以选择支持上面的一种或多种分布式存储方案,也可以选择超出本文探讨的方案,比如CephFS和GlusterFS等等。
文章转载自盛桃云,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论