FastDFS文件同步原理
- 同一组内的StorageServer之间是对等的,文件上传、删除等操作可以在任意一台StorageServer上进行;
- 文件同步(添加/删除/修改)只在同组内的StorageServer之间进行,采用push方式,即源服务器同步给目标服务器;
- 源头数据才需要同步,备份数据不需要再次同步,否则就会构成环路了;
- 上述第二条规则有个例外,就是新增加一台StorageServer时,由已有的一台StorageServer将已有的所有数据(包括源头数据和备份数据)同步给该新增服务器。
FastDFS文件目录介绍
FastDF服务端目录介绍
TrackerServer
${base_path}
|__data
| |__storage_groups.dat:存储分组信息
| |__storage_servers.dat:存储服务器列表
|__logs
|__trackerd.log:tracker server日志文件
StorageServer
${base_path}
|__data
| |__.data_init_flag:当前storage server 初始化信息
| |__storage_stat.dat:当前storage server统计信息
| |__sync:存放数据同步相关文件
| | |__binlog.index:当前的binlog文件索引号
| | |__binlog.###:存放更新操作记录(日志)
| | |__${ip_addr}_${port}.mark:存放同步的完成情况
| |
| |__一级目录:256个存放数据文件的目录,如:00, 1F
| |__二级目录:256个存放数据文件的目录
|__logs
|__storaged.log:storage server日志文件
其他篇章文章
1. FastDFS文件系统简介与架构原理
2. 文件上传原理
3. 文件下载原理
4. FastDFS文件同步原理与文件目录简介
5. 服务端与客户端之间的通讯协议(自定义的通讯协议)