首先答案是肯定的,fastdfs不支持windows。
其次建议你使用Minio

一、引言

一般来说文件存储花钱就选择阿里云oss、七牛云等产品,开源的话,目前开源的分布式文件存储系统非常多,上网一搜 "Ceph,GlusterFS,Sheepdog,

Lustre,Swift,Cinder,TFS,HDFS,MooseFS,FastDFS,MogileFS等" 这么多,有没有感觉看完对这些产品的分析后,还是不知道选择哪个????

这是一篇针对主流的开源的分布式文件存储系统的对比文章:

开源分布式存储系统的对比_直到世界的尽头-CSDN博客_四大开源分布式存储​blog.csdn.net

二、那到底选择哪个呢?

2.1、实在没法选择时,我们先看看几开源产品github 的 star

分布式文件系统 github star os支持
minio 25.1k win/linux
fastdfs 7k win
ceph 8.6k win/linux
GlusterFS 2.9k win/linux

2.2、推荐使用minio

看看这篇文章:《MinIO很强-让我放弃FastDFS拥抱MinIO的8个理由》

MinIO很强-让我放弃FastDFS拥抱MinIO的8个理由​www.cnblogs.com

三、minio安装与使用

3.1、 windows安装非常简单

官网直接下载:

https://min.io/​min.io

启动就这么简单, F:Data 就是文件存储的目录

3.3、java调用minio

在官方上有相应的demo,不过官网引用的版本比较旧,相应的demo也比较旧,最新的demo我们可以去github上看。

githug examples:

https://github.com/minio/minio-java​github.com

minio/minio-java

https://github.com/minio/minio-java​github.com

以下代码基于官方github微调后的示例

  <dependency><groupId>io.minio</groupId><artifactId>minio</artifactId><version>8.0.3</version></dependency>

class MinioTest {MinioClient minioClient;@BeforeEachvoid setUp() {minioClient =MinioClient.builder().endpoint("https://play.min.io").credentials("Q3AM3UQ867SPQQA43P2F", "zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG").build();}/*** 上传文件** @throws Exception*/@Testvoid test_upload() throws Exception {minioClient.uploadObject(UploadObjectArgs.builder().bucket("bucket01").object("test.txt").filename("D:dataDesktoptest.txt").build());System.out.println("my-filename is uploaded to my-objectname successfully");}/*** 下载文件** @throws Exception*/@Testvoid test_download() throws Exception {minioClient.downloadObject(DownloadObjectArgs.builder().bucket("bucket01").object("test.txt").filename("D:dataDesktoptest.txt").build());System.out.println("my-filename is uploaded to my-objectname successfully");}/*** 获取文件URL** @throws Exception*/@Testvoid test_geturl() throws Exception {String url =minioClient.getPresignedObjectUrl(GetPresignedObjectUrlArgs.builder().method(Method.GET).bucket("bucket01").object("test.txt").expiry(60 * 60 * 24).build());System.out.println(url);}/*** 上传+加密** @throws Exception*/@Testvoid test_upload_sse() throws Exception {KeyGenerator keyGen = KeyGenerator.getInstance("AES");keyGen.init(256);ServerSideEncryptionCustomerKey ssec =new ServerSideEncryptionCustomerKey(keyGen.generateKey());minioClient.uploadObject(UploadObjectArgs.builder().bucket("bucket01").object("test-sse-01.txt").filename("D:dataDesktoptest.txt").sse(ssec).build());System.out.println("my-filename is uploaded to my-objectname successfully");}/*** 下载+解密** @throws Exception*/@Testvoid test_download_sse() throws Exception {KeyGenerator keyGen = KeyGenerator.getInstance("AES");keyGen.init(256);ServerSideEncryptionCustomerKey ssec =new ServerSideEncryptionCustomerKey(keyGen.generateKey());minioClient.downloadObject(DownloadObjectArgs.builder().bucket("bucket01").object("test-sse-01.txt").filename("D:dataDesktop_test-sse-01.txt").ssec(ssec) // Replace with same SSE-C used at the time of upload..build());System.out.println("my-objectname is successfully downloaded to my-filename");}/*** 如何保存上传时的密钥对象** @throws Exception*/@Testvoid test_key() throws Exception {KeyGenerator keyGen = KeyGenerator.getInstance("AES");keyGen.init(256);SecretKey key1 = keyGen.generateKey();byte[] keySave = key1.getEncoded();System.out.println("key1 = " + Base64.getEncoder().encodeToString(keyBytes));//这里把keySave 保存下来就可以了,当然我们可以转成base64保存//以下就是把存储下来的keySave还原成SecretKey对象SecretKey key2 = new SecretKeySpec(keySave , "AES");System.out.println("key2 = " + Base64.getEncoder().encodeToString(key2 .getEncoded()));//key1 == key2assertEquals(key1,key2);}
}

fastdfs 吗 支持windows_主流开源文件存储系统-fastdfs是否支持windows?你可以选择minio...相关推荐

  1. java电商项目搭建-------分布式文件存储系统(fastDFS)

    人之所以痛苦,那是因为你在成长.--------magic_guo 微服务项目,由于访问量和系统的高可用性能,会将上传的文件图片等存放在搭建的分布式文件存储系统:现在比较流行的文件存储系统有fastD ...

  2. 【MongoDB 快速上手】别找了,主流开源分布式系统存储系统三剑客:FastDFS、Minio、MongoDB零基础入门实战教程!

    MongoDB用起来 - 快速上手&集群和安全系列 课程目标 1 MongoDB相关概念 1.1 业务应用场景 1.2 MongoDB简介 1.3 体系结构 1.4 数据模型 1.5 Mong ...

  3. Django集成古老的分布式文件存储系统fastdfs,解决文件存储难问题

    前言 这几年一直在it行业里摸爬滚打,一路走来,不少总结了一些python行业里的高频面试,看到大部分初入行的新鲜血液,还在为各样的面试题答案或收录有各种困难问题 于是乎,我自己开发了一款面试宝典,希 ...

  4. FastDfs分布式文件存储系统

    FastDfs分布式文件存储系统 FastDfs 是一个开源的高性能分布式文件系统(DFS). 它的主要功能包括:文件存储,文件同步和文件访问,以及高容量和负载平衡.主要解决了海量数据存储问题,特别适 ...

  5. FastDFS - 分布式文件存储系统

    目录 一.分布式文件存储 1.分布式文件存储的由来 2.常见的分布式存储框架 二.FastDFS介绍 三.FastDFS安装 1.拉取镜像文件 2.构建Tracker服务 3.构建Storage服务 ...

  6. Docker部署Fastdfs分布式文件存储系统

    Docker部署Fastdfs分布式文件存储系统 Fastdfs分布式文件存储系统 拉取镜像 部署Tracker和Storage 开放端口 SpringBoot代码示例 Fastdfs分布式文件存储系 ...

  7. 分布式文件存储系统调研

    分布式文件存储系统调研 主流分布式文件存储系统 分布式文件系统 适合类型 文件分布 系统性能 复杂度 备份机制 接口类型 开发语言 使用 FastDFS 4KB~500MB 小文件合并存储,不分片处理 ...

  8. 盘点分布式文件存储系统____分布式文件存储系统简介

    盘点分布式文件存储系统 在项目的数据存储中,结构化数据通常采用关系型数据库,非结构化数据(文件)的存储就有很多种方式,服务器本地存储.Nas挂载.ftp等等,今天就来盘点一下,分布式文件存储系统. 一 ...

  9. 开源oa_开源OA:可以轻松支持云文档管理

    随着云办公.无纸化办公.在线办公逐渐为人们所熟知,云文档管理.协同办公等功能也被人重视了起来.随着工作文档的无纸化.工作地点随机化(可能是家中,也可能是某处咖啡厅)转变,纸质文档开始没落,电子云文档得 ...

最新文章

  1. MySQL 微秒慢查询补丁
  2. 生态伙伴 | 小鹅通企学院入驻飞书,助力企业一键打造自己的企业大学
  3. 大众26亿美元投资自动驾驶公司,可这行人才还在继续流失
  4. 最新版Kubernetes常用命令大全
  5. [转载] 七龙珠第一部——第063话 悟空大反击
  6. 在Java中VO , PO , BO , QO, DAO ,POJO是什么意思
  7. jQuery Validate 初见面
  8. 记:使用IScroll.js 开发picker日历组件遇到的问题及经验总结
  9. 在Python中使用try-except-else是否是一种好习惯?
  10. Navicat for MySQL再谈之无奈之下还是去安装Navicat Premium
  11. wpf之DataTrigger 数据触发器
  12. BZOJ1008[HNOI2008] 越狱
  13. C# 通过api 下载sharepoint中的文件
  14. 用人机对话系统设计逻辑探究人工智能产品经理
  15. 臭氧9母带处理工具:iZotope Ozone 9 Advanced for Mac
  16. python数码时钟代码_micro:bit 编程模拟时钟表盘
  17. 软件测试周刊(第30期):专注 力量 敏捷 协作
  18. 【串级PID】浅谈串级PID作用及意义——快速理解串级PID结构优势(附图)
  19. 支付宝应用授权获取会员信息
  20. MATLAB代码:储能参与调峰调频联合优化模型

热门文章

  1. api-gateway实践(03)新服务网关 - 网关请求拦截检查
  2. sql2012一段时间无法连接报53错误
  3. 使用 python 操作 redis
  4. 无用的设计模式之装饰者模式
  5. 【jquery】基于 jquery 实现 ie 浏览器兼容 placeholder 效果
  6. 新后缀再开放,投资者应谨慎对待!
  7. Citrix VDI-in-a-Box 第二篇:架构篇
  8. Oracle中sys和system的区别
  9. linux多线程学习设置线程调度权限
  10. FFMpeg中apiexample.c例子分析——解码分析