FastDFS 认知

FastDFS

一、初识

  • DFS (Distributed Files System) 分布式文件管理系统;
  • FastDFS是tb架构师用C语言编写,开源的轻量级,支持Linux,Unix
  • 主要是为解决海量数据存储问题,特别适合中小文件(4KB < file_size <500MB)为载体的在线服

二、组成

                由三个部分:★客户端 Client        ★ 跟踪服务器 Tracker        ★存储服务器 Storage 

  •     客户端 Client
            上传下载数据的服务器,即开发项目所部署的服务器
  •     存储服务器 Storager 

            提供容量和备份服务;以 组(group或称卷volume) 为单位,每个 group 内可以有多台 storager,组内数据互为备份(如上图可理解为纵向备份),故此处提醒:存储空间以组内最小的容量为准,所以最好在配置时同一个组内的storager容量要相同,以免浪费存储的空间。

            以组group为单位组织存储能方便进行应用隔离、负载均衡、副本数定制(即组内的纵向storager数量增删)  

  •     跟踪服务器 Tracker

          主要做调度工作,起到均衡的作用;负责管理所有的 storage server和 group,每个 storage 在启动后会连接 Tracker,告知自己所属 group 等信息,并保持周期性心跳,所有的Tracker都接收storage的心跳信息,生成元数据信息来提读写服务


三、使用

        FastDFS 提供基本文件访问接口,upload、dowload、append、delete等,

  • 文件上传

  • 文件下载

  • 文件的同步

        当文件上传成功后,后台线程会将文件同步至同组group内的其他storager(即纵向的存储器中),并且每个storage写文件后,会同时写一份binlog,binlog里不包含文件数据,只包含文件名等元信息,这份binlog用于后台同步,storage会记录向group内其他storage同步的进度,以便重启后能接上次的进度继续同步;进度以时间戳的方式进行记录,所以最好能保证集群内所有server的时钟保持同步。

        storage的同步进度会作为元数据的一部分汇报到tracker上,tracke在选择读storage的时候会以同步进度作为参考


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值