分布式文件系统FastDFS实战(上)——FastDFS介绍及架构机制

1. FastDFS简介

FastDFS是一款开源的轻量级分布式文件系统,由国人余庆所开发,其项目地址:https://github.com/happyfish100

  • 纯C实现,支持Linux,FreeBSD等UNIX系统

  • 类google FS,不是通用的文件系统,只能通过专有API访问,目前提供了C、Java和PHP API等

  • FastDFS可以看做是基于文件的key value pair存储系统,称作分布式文件存储服务更为合适

  • 特别适合大中型网站使用(建议范围:4KB < file_size <500MB 如:图片、文档、视频等),为互联网应用量身定做,追求高性能和高扩展性


2. FastDFS架构及机制

2.1 FastDFS架构

分布式文件系统FastDFS实战(上)——FastDFS介绍及架构机制

Tracker Server:跟踪服务器,主要做调度工作,在访问中起负载均衡的作用。在内存中记录集群中group和storage server的状态信息,是连接Client和Storage server的枢纽。因为相关信息全部在内存中,Tracker server的性能非常高,一个较大的集群(比如上百个group)中有3台就足够了。

Storage Server:存储服务器,文件和文件属性(meta data)保存到存储服务器上。

存储服务器分组(group),不同组之前不能通信 存储服务器主动与追踪服务器通信 追踪服务器可以设置多个,角色是平等相同的

2.2 相关术语
  • Tracker Server:跟踪服务器,主要做调度工作,在访问上起负载均衡的作用。记录storage server的状态,是连接Client和Storage server的枢纽。

  • Storage Server:存储服务器,文件和meta data都保存到存储服务器上

  • group:组,也可称为卷。同组内服务器上的文件是完全相同的

  • 文件标识fid:包括两部分:组名和文件名(包含路径)

  • meta data:文件相关属性,键值对(Key Value Pair)方式,如:width=1024,heigth=768

2.3 FastDFS机制
  • FastDFS上传机制

分布式文件系统FastDFS实战(上)——FastDFS介绍及架构机制

  • FastDFS下载机制

分布式文件系统FastDFS实战(上)——FastDFS介绍及架构机制

  • FastDFS同步机制

分布式文件系统FastDFS实战(上)——FastDFS介绍及架构机制

分布式文件系统FastDFS实战(上)——FastDFS介绍及架构机制

    • 同一组内的storage server之间是对等的,文件上传、删除等操作可以在任意一台storage server上进行;

    • 文件同步只在同组内的storage server之间进行,采用push方式,即源服务器同步给目标服务器;

    • 源头数据才需要同步,备份数据不需要再次同步,否则就构成环路了;

    • 上述第二条规则有个例外,就是新增加一台storage server时,由已有的一台storage server将已有的所有数据(包括源头数据和备份数据)同步给该新增服务器。

偷懒不总结了,直接参考吧!哈哈,以下看完应该就没什么问题了。


anzhihe安志合个人博客,版权所有丨 如未注明,均为原创 丨转载请注明转自:https://chegva.com/2482.html | ☆★★每天进步一点点,加油!★★☆

您可能还感兴趣的文章!

发表评论

电子邮件地址不会被公开。 必填项已用*标注