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. 服務端與客戶端之間的通訊協議(自定義的通訊協議)