FastDFS比较适合以中小文件为载体的在线服务,比如跟NGINX(APACHE)配合搭建图片服务器。
FastDFS是纯C语言实现,只支持Linux、FreeBSD等UNIX系统。
FastDFS的两个核心概念分别是:Tracker(跟踪器)、Storage(存储节点)

FastDFS主要特性
- 为互联网量身定制,海量数据文件存储。
- 高可用(同组备份机制)。
- FastDFS不是通用的文件系统,只能通过api来访问,目前提供c,java,php客户端。phtyon由第三方开发者提供。
- FastDFS可以看作是基于key/value pair存储系统,也许称为分布式文件存储服务更合适。
- 支持高并发(这个好像没体现出支持什么高并发,这个是nginx的功劳吧)
参考的文章有:
1、FastDfs 简介和单机版搭建(这个文章很详细,我按照他的步骤成搭建成功了。)
http://www.cnblogs.com/chiangchou/p/fastdfs.html
2、 FastDFS集群部署(这文章也很详细,但是建议在搭建完单机版之后在尝试,不然会坑到自己。)

这篇文章评论中提到了文章中的一个bug,具体操作的同学注意一下。
https://www.cnblogs.com/cnmenglang/p/6731209.html
http://bbs.chinaunix.net/thread-1941456-1-1.html
4、fastdfs添加新group注意事项
https://blog.csdn.net/ygqygq2/article/details/80926936
文件存储方案对比
在选择FastDfs之前,查询了一些文章,做技术选型的参考。
https://blog.csdn.net/ffm83/article/details/42672121
https://blog.csdn.net/dingjs520/article/details/78655556
https://blog.csdn.net/WK313753744/article/details/49943835
上面文章中的对比图,相对还是比较直观的。



hadoop和fastDfs的对比
前期有人建议使用Hadoop,查了一下hadoop和fastDfs的对比,主要是定位和应用场合不一样。
hadoop
hadoop的文件系统HDFS主要解决并行计算中分布式存储数据的问题。其单个数据文件通常很大,采用了分块(切分)存储的方式;
这个一般不作为线上系统,可用性和响应性很难达标,文件太小时对元数据服务器压力过大,不推荐。如果要硬上,图片可以放到 hbase, 视频直接放到 hdfs, 但可用性很难保证。
FastDFS
FastDFS主要用于大中网站,为文件上传和下载提供在线服务。所以在负载均衡、动态扩容等方面都支持得比较好,FastDFS不会对文件进行分快(切分)存储。
有个小问题是不能自定义URL,还有就是访问频率不能太高。另外就是你需要不错的运维和技术人员来搞定fastdfs 的运维
HDFS和FastDFS的上传、下载效率对比测试
fastDfs的下载上传速度相对而言还是要快一些
https://blog.csdn.net/a519781181/article/details/79125379