fastdfs分布式文件系统概述

来源:互联网 发布:tk免费域名注册网站 编辑:程序博客网 时间:2024/04/29 09:55

在工作中使用到了fastdfs分布式文件系统用作图片、文件的存储,由于它小巧、易用、高性能、自带分布式和负载均衡的功能,收到了很多公司和

团队的喜爱。自己在使用过程中也觉得非常的好用所以写几篇文章对fastdfs文件系统概述、存储结构、分布式实现和与dubbo结合起来实现一个分

布式服务给其它服务和应用进行调用,来让更多朋友对它的了解并使用。

fastdfs文件概述:

在百度百科里面是这样介绍的:“FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问

(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。"这段描述的

非常的正确,fastdfs就是有这么好。


fastdfs文件系统架构图

FASTDFS结构图

fastdfs文件系统架构图(图来自互联网)


从图中我们可以看出fastdfs文件系统由tracker集群、storage server服务组成。

Tracker是FastDFS文件系统的协调者,负责管理所有的storage server和group,每个storage在启动后会连接Tracker,告知自己所属的group等信息,

并保持周期性的心跳,tracker根据storage的心跳信息,建立groupstorage server的映射表。文件的上传和删除,并不需要tracker作为中间者,调用

storage server操作文件。client直接操作storage server。


storage server:简称storage,以组(卷,group或volume)为单位组织,一个group内包含多台storage机器,数据互为备份,存储空间以group内容

量最小的storage为准,所以建议group内的多个storage尽量配置相同,以免造成存储空间的浪费。


fastdfs工作原理:客户端client 调用fastdfs的api,获取可用的tracker server ,再调用tracker server 获取可用的组,tracker server 通过负载均衡返回一个

最优的storage server,这样客户端与client就建立了连接,client就可以调用storage server对文件进行上传、删除和追加的操作。


tracker和storage sever是fastdfs的核心,是不可缺少的。下一章将会给大家介绍tracker和storage sever,以及它们的关系,它们是怎么搭配工作的。


4 0