1 / 29
文档名称:

分布式文件系统FastDFS架构剖析及配置优化.pdf

格式:pdf   页数:29
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

分布式文件系统FastDFS架构剖析及配置优化.pdf

上传人:翩仙妙玉 2012/7/8 文件大小:0 KB

下载得到文件列表

分布式文件系统FastDFS架构剖析及配置优化.pdf

文档介绍

文档介绍:分布式文件系统FastDFS
架构剖析及配置优化
余庆
2012年04月08日
2012
FastDFS概述
FastDFS是一款开源的轻量级分布式文件系统
–纯C实现,支持Linux、FreeBSD等UNIX系统
–类google FS,不是通用的文件系统,只能通过
专有API访问,目前提供了C、Java和PHP API
–为互联网应用量身定做,解决大容量文件存储
问题,追求高性能和高扩展性
– FastDFS可以看做是基于文件的key value pair存
储系统,称作分布式文件存储服务更为合适

2012
FastDFS提供的功能
• upload:上传普通文件,包括主文件
• upload_appender:上传appender文件,后续可
以对其进行append操作
• upload_slave:上传从文件
• download:下载文件
• delete:删除文件
• append:在已有文件后追加内容
• set_metadata:设置文件附加属性
• get_metadata:获取文件附加属性
2012
FastDFS的特点
•分组存储,灵活简洁
•对等结构,不存在单点
•文件ID由FastDFS生成,作为文件访问凭证。FastDFS
不需要传统的name server
•和流行的web server无缝衔接,FastDFS已提供
apache和nginx扩展模块
•大、中、小文件均可以很好支持,支持海量小文件
存储
•支持多块磁盘,支持单盘数据恢复
•支持相同文件内容只保存一份,节省存储空间
•存储服务器上可以保存文件附加属性
•下载文件支持多线程方式,支持断点续传
2012
FastDFS发展历史
• 2008年4月项目启动,7月发布第一个版本
,。
• 。

• 。当前最新版本是

• V1和V2系列后续不再维护和升级
2012
FastDFS的版本演变
• :采用传统的一个请求一个线程服务的
模式,系统资源消耗较大,支持的并发连
接数在1K左右
• :采用libevent异步IO模型,磁盘读写采
用专门的线程,
和高效。支持的并发连接数可以达到10K
• :支持小文件合并存储,解决海量小文
件的存储问题
2012
FastDFS架构示意图
2012
FastDFS架构解读
•只有两个角色,tracker server和storage server,
不需要存储文件索引信息
•所有服务器都是对等的,不存在Master-Slave
关系
•存储服务器采用分组方式,同组内存储服务器
上的文件完全相同(RAID 1)
•不同组的storage server之间不会相互通信
•由storage server主动向tracker server报告状态
信息,tracker server之间通常不会相互通信

2012
FastDFS上传文件流程图
1. client询问tracker上传到的storage;
2. tracker返回一台可用的storage;
3. client直接和storage通信完成文件上传,storage返回文件ID。
2012
FastDFS下载文件流程图
1. client询问tracker可以下载指定文件的storage,参数为文件
ID(组名和文件名);
2. tracker返回一台可用的storage;
3. client直接和storage通信完成文件下载。
2012