FastDFS是一个轻量级的开源分布式文件系统 FastDFS主要解决了大容量的文件存储和高并发访问的问题,文件存取时实现了负载均衡 FastDFS实现了软件方式的RAID,可以使用廉价的IDE硬盘进行存储 支持存储服务器在线扩容 支持相同内容的文件只保存一份,节约磁盘空间 FastDFS只能通过Client API访问,不支持POSIX访问方式;FastDFS特别适合大中型网站使用,用来存储资源文件(如:图片、文档、音频、视频等等)。

架构图

系统架构-上传文件流程图

1. client询问tracker上传到的storage,不需要附加参数;

2. tracker返回一台可用的storage;

3. client直接和storage通讯完成文件上传。

同步机制

同一组内的storage server之间是对等的,文件上传、删除等操作可以在任意一台storage server上进行; 文件同步只在同组内的storage server之间进行,采用push方式,即源服务器同步给目标服务器; 源头数据才需要同步,备份数据不需要再次同步,否则就构成环路了; 上述第二条规则有个例外,就是新增加一台storage server时,由已有的一台storage server将已有的所有数据(包括源头数据和备份数据)同步给该新增服务器。

运行时目录结构-tracker server

运行时目录结构-storage server

安装和运行

#step 1. download FastDFS source package and unpack it,

# if you use HTTP to download file, please download libevent 1.4.x and install it

tar xzf FastDFS_v1.x.tar.gz #for example:

tar xzf FastDFS_v1.20.tar.gz

#step 2. enter the FastDFS dir cd FastDFS

#step 3. if HTTP supported, modify make.sh, uncomment the line:

# WITH_HTTPD=1, then execute: ./make.sh #step

4. make install ./make.sh install #step

5. edit/modify the config file of tracker and storage

#step 6. run server programs #start thetracker server:

/usr/local/bin/fdfs_trackerd <tracker_conf_filename>

#start the storage server:

/usr/local/bin/fdfs_storaged <storage_conf_filename>

安装到maven仓库

<dependency>

<groupId>org.csource</groupId>

<artifactId>fastdfs-client-java</artifactId>

<version>1.27-SNAPSHOT</version>

</dependency>

FastDFS简介和安装的更多相关文章

  1. fastdfs+nginx+image_filter安装与生成缩略图

    fastdfs简介 类似google FS的一个轻量级分布式文件系统,纯C实现,支持linux.FreeBSD等UNIX系统: 只能通过API访问,不支持POXIS: 文件不分块存储,上传的文件和OS ...

  2. 01 . 分布式存储之FastDFS简介及部署

    分布式存储简介 现代的互联网已经进入大数据时代,每天都有数以万计的数据产生,这些数据的规模轻轻松松地可以达到几P的级别,传统的的单机存储早已捉襟见肘,根本无法满足大数据对存储系统的要求.这时,各种分布 ...

  3. Node.js 教程 01 - 简介、安装及配置

    系列目录: Node.js 教程 01 - 简介.安装及配置 Node.js 教程 02 - 经典的Hello World Node.js 教程 03 - 创建HTTP服务器 Node.js 教程 0 ...

  4. Java Gradle入门指南之简介、安装与任务管理

        这是一篇Java Gradle入门级的随笔,主要介绍Gradle的安装与基本语法,这些内容是理解和创建build.gradle的基础,关于Gradle各种插件的使用将会在其他随笔中介绍.    ...

  5. 细细品味Storm_Storm简介及安装

    Storm是由专业数据分析公司BackType开发的一个分布式实时数据处理软件,可以简单.高效.可靠地处理大量的数据流.Twitter在2011年7月收购该公司,并于2011年9月底正式将Storm项 ...

  6. VMware vSphere 5.1 简介与安装

    虚拟化系列-VMware vSphere 5.1 简介与安装  标签: 虚拟化 esxi5.1 VMware vSphere 5.1 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 . ...

  7. Nutch搜索引擎(第2期)_ Solr简介及安装

    1.Solr简介 Solr是一个高性能,采用Java5开发,基于Lucene的全文搜索服务器.同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置.可扩展并对查询性能进行了优化 ...

  8. Node.js的简介和安装

    一.Node.js的简介和安装 a)       什么是Node.js? Node.js是一个开发平台 让JavaScript运行在服务器端的开发平台 ---简单点说就是用JavaScript写服务器 ...

  9. CentOS6.2下fastDFS的完整安装和配置步骤

    centos6.2系统下安装配置FastDFS步骤: 1:安装libevent(libevent-2.0.16-stable) ##卸载系统自带libevent rpm -qa|grep libeve ...

随机推荐

  1. zabbix负载均衡群集高可用架构

    由于服务器资源限制,将MySQL服务放在zabbix服务器上,生产环境应尽量分开

  2. linux 系统忘记登录密码

    linux6/6.5再启动时,按e ->在输入行最后面 输入空格 再输入single ->启动设置密码即可 单用户模式 在centos7需要 按e -> 然后滚动列表,找到ro(ro ...

  3. linux 查看日志最后几行

    tail -n 50 wx.log 示例:查看/var/log/boot.log,只显示最后一行.则执行 tail -n 1  /var/log/boot.log tail -n 1000:显示最后1 ...

  4. 使用POI导入小数变成浮点数异常

    例如   我在Excel中的数据为17.2, 导入到表中就变成了17.1999999或者17.20000001 原因是我用double接收了17.2,然后直接用了String去转换,精度就丢失了. 代 ...

  5. MyBatise代码自动生成时候Oralce的number类型BigDecimal问题

    使用MyBatise的代码自动生成工具时候,即便在配置文件中定义了 <javaTypeResolver> <property name="forceBigDecimals& ...

  6. notepad++个人专注

    notepad++个人专注   快捷键 功能 1 Ctrl>>>>>>>>>>    Ctrl + b  匹配括号 Ctrl + d  选中 ...

  7. Word 开发资料集合

    Word 对象模型概述  https://msdn.microsoft.com/zh-cn/library/kw65a0we.aspx DSOframer微软官方API的查阅方法  http://sh ...

  8. Git创建仓库的方法(github翻译)

    …通过命令行创建一个新的仓库 echo "# GitTest" >> README.md # 船舰一个说明文件,说明内容是 "# GitTest" ...

  9. asp.net(c#)开发中的文件上传组件uploadify的使用方法(带进度条)

    上文件传很常见,现在就文件上传利用HTML的File控件(uploadify)的,这里为大家介绍一下(uploadify)的一些使用方法.在目前Web开发中用的比较多的,可能uploadify(参考h ...

  10. HDFS读写流程

    01.并行读取 02.逐个节点写入