FastDFS设计时借鉴了MogileFS的一些思路。FastDFS是一个完善的分布式文件存储系统,通过客户端API对文件进行读写。可以说,MogileFS的所有功能特性FastDFS都具备,MogileFS网址:http://www.danga.com/mogilefs/。

mogilefs 安装:http://durrett.net/mogilefs_setup.html

FastDFS详情请参阅:http://www.csource.org/

fastdfs  下载:http://code.google.com/p/fastdfs/downloads/list

另外,相对于MogileFS,FastDFS具有如下特点和优势:
1. FastDFS完善程度较高,不需要二次开发即可直接使用;
2. 和MogileFS相比,FastDFS裁减了跟踪用的数据库,只有两个角色:tracker和storage。FastDFS的架构既简化了系统,同时也消除了性能瓶颈;
3. 在系统中增加任何角色的服务器都很容易:增加tracker服务器时,只需要修改storage和client的配置文件(增加一行tracker配置);增加storage服务器时,通常不需要修改任何配置文件,系统会自动将该卷中已有文件复制到该服务器;
4. FastDFS比MogileFS更高效。表现在如下几个方面:
    1)参见上面的第2点,FastDFS和MogileFS相比,没有文件索引数据库,FastDFS整体性能更高;
    2)从采用的开发语言上看,FastDFS比MogileFS更底层、更高效。FastDFS用C语言编写,代码量不到3万行,没有依赖其他开源软件或程序包,安装和部署特别简洁;而MogileFS用perl编写;
    3)FastDFS直接使用socket通信方式,相对于MogileFS的HTTP方式,效率更高。并且FastDFS使用sendfile传输文件,采用了内存零拷贝,系统开销更小,文件传输效率更高。
5. FastDFS有着详细的设计和使用文档,而MogileFS的文档相对比较缺乏。
6. FastDFS的日志记录非常详细,系统运行时发生的任何错误信息都会记录到日志文件中,当出现问题时方便管理员定位错误所在。
7. FastDFS还对文件附加属性(即meta data,如文件大小、图片宽度、高度等)进行存取,应用不需要使用数据库来存储这些信息。
8. FastDFS从V1.14开始支持相同文件内容只保存一份,这样可以节省存储空间,提高文件访问性能。
9. FastDFS从V1.18开始支持下载文件时,允许指定文件偏移量和大小(字节数)。

fastDFS配置

最近的项目中一个早期规划的版面大部分基于文字的,图片不多,所以前期没有做图片分离,随着公测,以及页面效果的体验。
决定要用大量图片来做视觉冲击。所以必须架设分布式文件系统来实现图片分离。之前用过mogilefs,感觉还是不错,就是配置起来还是繁琐,
并且是基于mysql做节点日志控制的,所以比较麻烦点。
之所以采用FastDFS,使用它协议比较简单。php操作也比较方便,当然更重要的是性能也不错。

简单配置
/*————–安装—————————*/
wget http://fastdfs.googlecode.com/files/FastDFS_v1.22.tar.gz
tar zvxf FastDFS_v1.22.tar.gz
cd FastDFS
./make.sh
./make.sh install

/*————–配置—————————*/
服务器设定

tracker: 192.168.1.1
storage: 192.168.1.2

/*————–添加配置文件—————————*/
mkdir /usr/local/fasrdfs/
vim /usr/local/fasrdfs/tracker_config
vim /usr/local/fasrdfs/storage_config

/*——tracker_config——–tracker(跟踪器)服务器——————-*/

bind_addr=
port=22122
network_timeout=20
base_path= /www/dlsite/uploads/events/
max_connections=256
store_lookup=0
store_group=group2
store_server=1
reserved_storage_space = 4GB
log_level=info
run_by_group=
run_by_user=
allow_hosts=*

/*——storage_config——–存储节点(storage)服务器—————–*/

disabled=false
group_name=group1
bind_addr=12
port=23000
network_timeout=20
heart_beat_interval=30
stat_report_interval=600
base_path=/www/dlsite/uploads/events/
sync_wait_msec=200
max_connections=256
tracker_server=192.168.1.2:22122
log_level=info
run_by_group=
run_by_user=
allow_hosts=*

/*——————-启动————————————*/
/usr/local/bin/fdfs_trackerd /usr/local/fastdfs/tracker_config
/usr/local/bin/fdfs_storaged /usr/local/fastdfs/storage_config

/*————–向存储节点(storage)发送数据—————————*/

/usr/local/bin/fdfs_test /usr/local/fastdfs/storage_config upload 数据文件
/*————–查看进程—————————*/
ps aux | grep fdfs

fastDFS and mogileFS相关推荐

  1. 分布式文件系统Fastdfs 详细安装笔记

    简介 FastDFS是一款类Google FS的开源分布式文件系统,它用纯C语言实现,支持Linux.FreeBSD.AIX等UNIX系统.它只能通过专有API对文件进行存取访问,不支持POSIX接口 ...

  2. FastDFS分布文件系统

    FastDFS是为互联网应用量身定做的一套分布式文件存储系统,非常适合用来存储用户图片.视频.文档等文件.对于互联网应用,和其他分布式文件系统相比,优势非常明显.具体情况大家可以看相关的介绍文档,包括 ...

  3. 分布式文件系统FastDFS架构剖析

    文/余庆 FastDFS是一款类Google FS的开源分布式文件系统,它用纯C语言实现,支持Linux.FreeBSD.AIX等UNIX系统.它只能通过专有API对文件进行存取访问,不支持POSIX ...

  4. FastDFS的介绍

    FastDFS的介绍 FastDFS FastDFS是由国人余庆所开发,其项目地址: https://github.com/happyfish100FastDFS是一个轻量级的开源分布式文件系统,主要 ...

  5. fastdfs原理_搭建分布式文件系统FastDFS集群

    本文摘选abcdocker运维博客 abcdocker运维博客 – 专注DevOps自动化运维,传播优秀it运维技术文章​i4t.com 在生产环境中往往数据存储量比较大,因此会大部分会选择分布式存储 ...

  6. FastDFS服务器搭建

    目录 一.FastDFS介绍 1.1 简介 1.2   FastDFS架构 1.2.1 Tracker 集群 1.2.2 Storage 集群 1.2.3  Storage状态收集 1.2.4 Fas ...

  7. 分布式文件系统FastDFS架构辨析,分布式文件系统FastDFS_V4.06安装部署

    FastDFS是一款类Google FS的开源分布式文件系统,它用纯C语言实现,支持Linux.FreeBSD.AIX等UNIX系统.它只能通过专有API对文件进行存取访问,不支持POSIX接口方式, ...

  8. Linux FastDFS 分布式文件系统安装

    Linux FastDFS 分布式文件系统安装 2013 年 3 月 11 日 – 09:21 | 930 views | 收藏  (No Ratings Yet) FastDFS是一款类Google ...

  9. CentOS7设置静态IP、搭建单机版FastDFS图片服务器、使用FastDFS-Client客户端进行简单测试、实现图片上传、实现商品添加修改删除

    CentOS7设置静态IP.搭建单机版FastDFS图片服务器.使用FastDFS-Client客户端进行简单测试.实现图片上传.实现商品添加修改删除 CentOS7设置静态IP而且还可以上网 192 ...

最新文章

  1. hdu 2025:查找最大元素(水题,顺序查找)
  2. 数值分析第五版电子版_二年级上册数学重点必考题20道,看看不吃亏!【有电子版】...
  3. 「 每日一练,快乐水题 」540. 有序数组中的单一元素
  4. 上海经济适用房申请条件
  5. Halcon阈值分割方法简析
  6. Scrapy-redis实现分布式爬取的过程与原理
  7. 7-4 sdut-求两个整数之和(II)
  8. 《悟透JavaScript》进展汇报
  9. 【引用】她拒绝了他100次,但第101次他拒绝了她
  10. 多角度解读优酷土豆合并的深意
  11. mysql最多多少slave_MySQL5.7主从,单slave多master
  12. python 占用内存过高_PyCharm如何优化?太占内存了,太慢了
  13. 淘宝零食专栏分析(淘宝爬虫+数据分析)
  14. 寄昙说 剑子仙迹 天之佛
  15. 元气骑士超级科学计算机有什么用,元气骑士超级科学计算机攻略 天赋及获取方式汇总...
  16. 小米-测试工程师面试20190418
  17. dparsf是什么_老师,我用DPARSF做Slice Timeing时老报错,请问您是什么原因呢?
  18. android变身蓝牙键鼠,使用BluetoothHidDevice将安卓手机同时模拟成鼠标和键盘
  19. python提取图片频谱_Python提取音乐谱并将其可视化,频谱
  20. MIRO BAPI_INCOMINGINVOICE_CREATE1 报错 MRM_INVOICE_TAXES_SAVE

热门文章

  1. Anaconda,spyder安装PyQtChart
  2. lvx-las-pcd-txt 批量转换工具
  3. Linux系统查看系统日志教程
  4. matlab的2DCNN、1DCNN、BP、SVM故障诊断与结果可视化
  5. JS实现Tab栏切换
  6. 巡风漏扫系统搭建(docker)
  7. 【新青年-健壮】跑步相关计划准备
  8. kill -9 无法杀死进程解决
  9. Kafka 安装、原理、使用
  10. BUAA 数据结构总结