什么是fastdfs,原理,上传下载流程

一:什么是FastDFS?
FastDFS是一个开源的分布式文件系统,由tracker serverstorage server和client三个部分组成,主要解决了海量数据存储和负载均衡等问题,特别适合以中小文件(建议范围:4KB < file_size <500MB)为载体。

二:
1、Storage server

Storage server(后简称storage)以组(卷,group)为单位,一个group内包含多台storage机器,数据互为备份,存储空间以group内容量最小的storage为准,所以建议group内的多个storage尽量配置相同,以免造成存储空间的浪费。

以group为单位存储能方便的进行应用隔离(同一应用数据装到不同的组去)、负载均衡(将应用分配到不同的group,缺点是恢复时间会很长)、副本数定制(storage可配置多个数据存储目录)

2、Tracker server
Tracker是FastDFS的协调者,负责管理所有的storage server和group,每个storage在启动后会连接Tracker,告知自己所属的group等信息,并保持周期性的心跳,tracker根据storage的心跳信息,建立group到[storage server list]的映射表。还在客户端发送请求后查询可用storage,挑选storage返回给客户端ip和端口号
什么是fastdfs,原理,上传下载流程_第1张图片

上传流程:
什么是fastdfs,原理,上传下载流程_第2张图片
3:同步原理
在客户端向storage上传文件成功后,会有后台线程将数据同步到同group的其它storage里,storage会保存同步进度,在下载文件时,Tracker选择storage会以storage记录的同步进度作为参考标准

文件下载流程:
什么是fastdfs,原理,上传下载流程_第3张图片

你可能感兴趣的:(FASTDFS)