FastDFS分布式文件存储

为什么会有分布式文件系统?

  • 分布式文件系统是面对互联网的需求而产生。因为互联网时代要对海量数据进行存储。很显然靠简单的增加硬盘个数已经满足不了我们的要求。
  • 因为硬盘传输速度有限但是数据在急剧增长,另外我们还要要做好数据备份、数据安全等。
  • 采用分布式文件系统可以将多个地点的文件系统通过网络连接起来,组成一个文件系统网络,结点之间通过网络进行通信,一台文件系统的存储和传输能力有限,我们让文件在多台计算机上存储通过多台计算机共同传输。

FastDFS 的架构图:

FastDFS 架构包括 Tracker server (追踪服务器) 和 Storage server (存储服务器) 。客户端请求Tracker server 进行文件上传、下载,通过其调度最终由 Storage server 完成文件上传和下载。

  • Tracker
    • Tracker Server 作用是负载均衡和调度 ,通过Tracker server在文件上传时可以根据一些策略0找到Storage server提供文件上传服务。可以将tracker称为 追踪服务器调度服务器
  • Storage
    • Storage Server 作用是文件存储 ,客户端上传的文件最终存储在Storage服务器上,Storageserver 没有实现自己的文件系统而是使用操作系统的文件系统来管理文件。可以将storage称为存储服务器

FastDFS 的应用场景:
文件存储 : FastDFS可以用于存储用户上传的图片、视频、文档等文件。由于其分布式架构,FastDFS能够应对高并发访问,并支持在线扩容。
媒体存储与访问: 对于需要存储和快速访问大量媒体文件的场景,如视频网站或图片库,FastDFS能够提供稳定、高效的文件存储服务。
分布式系统: FastDFS适用于构建分布式系统,通过分布式部署来提高系统的可用性和可扩展性。
数据备份与恢复: FastDFS可以用于存储和备份各类数据,如数据库备份、用户数据备份等。由于其文件去重功能,可以有效降低存储空间占用。
**文件共享与传输:**FastDFS可以用于实现文件共享和传输,如在线办公、文件同步等场景。
FastDFS跟云端存储的区别:

  • FastDFS的成本比七牛云等云端存储低
  • FastDFS是开源的轻量级分布式文件存储系统。特别适合以中小文件(建议范围:4KB < file_size <500MB)为载体的在线服务。
  • FastDFS中相同内容的文件只存储一份,能节约磁盘空间。
  • 支持在线扩容、增强系统的可扩展性
  • 支持主从文件,支持自定义扩展名

安装:

第一步,打开go-fastdfs的服务地址,滑到下面下载Windows版本的服务

第二步,打开go-fastdfs后台管理端地址点击这里


安装服务与管理端台可视化

1、将下载好的,压缩包和exe文件放到自已指定的文件夹下

(1) 首先进入到我们下载的目录中:
(2) 然后我们在当前目录下进入 cmd, 并输入 fileserver.exe server,或者编写启动类
(3) 然后我们回到服务所在的目录,会看到多出几个文件夹和文件


默认的端口号是 8080
(4) 可以在 conf 文件夹中 cfg.json 文件来配置修改端口号等属性

2 、安装 go-fastdfs 后台管理服务
(1) 进入到我们下载的目录中:

go-fastdfs 后台管理服务的压缩包 go-fastdfs-web-v1.3.7.zip
(2) 解压文件,如下图:

其中:
conf : 文件夹里面的 application.yml 文件是用来配置服务的属性的。
go-fastdfs-web.jar : 后台管理界面 jar 包
goFastDfsWeb.sh : linux 启动
start.bat : windows 启动 ( 压缩包自带 )
(3) 配置端口:

(4) 接下来点击 start.bat 启动后台管理服务
3 、访问后台管理页面配置 gofastdfs 界面
(1) 根据自己设置的后台管理 ip 访问 ( 我这里设置的是 8001) :

第一次访问时会提示未检测到本地的 GoFastDfs 服务,是因为它会自动去找 127.0.0.1:8080 ,
而我们在这里修改了默认端口!
(2) 设置各项属性,如图所示:

然后点击下一步,进行账号配置:
根据自己需求进行填写即可,然后点击安装,稍等片刻就完成啦!
(3) 然后我们使用刚才创建的账号进行登录:

出现该界面就意味着已安装成功。

相关推荐
WX187021128731 小时前
在分布式光伏电站如何进行电能质量的治理?
分布式
不能再留遗憾了4 小时前
RabbitMQ 高级特性——消息分发
分布式·rabbitmq·ruby
茶馆大橘4 小时前
微服务系列六:分布式事务与seata
分布式·docker·微服务·nacos·seata·springcloud
材料苦逼不会梦到计算机白富美7 小时前
golang分布式缓存项目 Day 1
分布式·缓存·golang
想进大厂的小王7 小时前
项目架构介绍以及Spring cloud、redis、mq 等组件的基本认识
redis·分布式·后端·spring cloud·微服务·架构
Java 第一深情7 小时前
高性能分布式缓存Redis-数据管理与性能提升之道
redis·分布式·缓存
ZHOU西口8 小时前
微服务实战系列之玩转Docker(十八)
分布式·docker·云原生·架构·数据安全·etcd·rbac
zmd-zk9 小时前
kafka+zookeeper的搭建
大数据·分布式·zookeeper·中间件·kafka
yx9o14 小时前
Kafka 源码 KRaft 模式本地运行
分布式·kafka
Gemini199515 小时前
分布式和微服务的区别
分布式·微服务·架构