FastDFS 分布式文件系统
FastDFS 使用c语言编写一款开源的分布式文件系统
FastDFS 架构包括 Tracker server和Storage server
客户端请求Tracker server 进行文件上传 下载,通过Tracker server 调度最终由Storage server完成文件上传和下载
Tracker server: 负载均衡和调度 文件上传时根据一些策略找到Storage server 提供文件上传服务 追踪服务器 调度服务器
Storage server: 文件存储 客户端上传的文件最终存储在Storage服务器上 Storage server 没有实现自己的文件系统而是利用操作系统的文件系统来管理文件 存储服务器
服务端两个角色:
Tracker 管理集群
Storage 实际保存文件
文件上传流程:
客户端上传连接请求到Tracker Server,查询可用的storage,返回给客户端信息(storage的ip 端口) ,客户端上传文件(file content metadata)给Storage Server,然后生成file_id ,将上传内容写入到磁盘中,返回给file_id(路径信息和文件名) 存储文件信息