FastDFS架构
FastDFS是以纯c语言实现得一款开源轻量级分布式文件系统,支持linux、freeBSD、AIX等UNIX系统,FastDFS不是通用的文件系统,不支持POSIX等接口发高烧,只能通过专有的API对文件进行访问。主要功能有文件上传下载,适合以中小文件(建议范围:4kb<file_size<500MB)为载体的在线服务,如相册网站,在线视频网站等等。
FastDFS由跟踪服务器(Tracker Server)、存储服务器(Storage Server)和客户端(Client)构成。
- 跟踪器-Tracker
跟踪服务器,主要做调度工作,起负载均衡的作用。在内存中记录集群中所有存储组和存储服务器的状态信息,是客户端和数据服务器交互的枢纽。客户端访问集群的时候会随机分配一个Tracker来和客户端交互; - 存储节点-Storage
存储服务器(又称:存储节点或数据服务器),实际存储数据的地方,文件和文件属性(meta data)都保存到存储服务器上。Storage server直接利用OS的文件系统调用管理文件。Group可以隔离不同应用的数据,不同应用的数据放在不同group里面; - 客户端-Client
作为业务请求的发起方,通过专有接口,使用TCP/IP协议与跟踪器服务器或存储节点进行数据交互。每个客户端服务器需要安装Nginx。