FastDFS分布式文件存储

  存储能力是提供给上层业务系统以实现文件存取服务,这个存储能力为XDFS,即可扩展的分布式文件系统,实现的原理是封装了第三方的分布式存储系统实现的。

目前封装的第三方分布式系统包括FastDFS、Hadoop的HDFS,所提供的存储接口如下:

    1  文件上传

    2 文件断点上传

    3 文件下载

    4 文件断点下载

    5  文件删除

    6 获取文件大小

    7  获取文件Http下载地址

    8 批量获取文件Http下载地址

  FastDFS适合的场景是互联网大中型企业的高并发文件存储服务,比如存储图片、音频、视频、文档等,不适合用于分布式计算,比如对大数据的统计分析。

Hadoop的HDFS适合的场景是分布式计算的存储,比如对大数据的统计分析,不适合用于高并发文件存储而快速响应的线上系统。

存储能力的使用主要分为客户端的API接口和服务器端的存储服务的部署,下面就这两部分进行详细讲解。

  1、客户端API接口:

    主要使用FileClient类加上xdfs.properties这个配置文件,具体例子请参考客户端使用例子目录下的代码。

    fastdfs-client-1.24.jar,xdfs-1.0.0.jar

    xdfs.properties内容
      file_manager=fdfs
      fdfs_tracker_server=IP:22122
      hdfs_namenode_url=hdfs://Ip:9000
      hdfs_root_path=/data
      hdfs_replication=3
      nfs_root_path=/data

  2、服务器FastDFS安装和部署:

    1)把FastDFS_v4.06.tar.gz和libevent-2.0.21-stable.tar.gz上传到linux服务器某个目录下,如上传到:/usr/local/resource

    2) 安装libevent

    cd /usr/local/resource

    tar –zxvf libevent-2.0.21-stable.tar.gz

    cd libevent-2.0.21-stable

    ./configure –prefix=/usr/local/libevent

    make

    make install

     ln –s /usr/local/libevent/lib/libevent-2.0.so.5 /usr/lib64/libevent-2.0.so.5

     默认编译libevent  在/usr/local/lib/

     ln -s /usr/local/lib/libevent-2.0.so.5 /usr/lib64/libevent-2.0.so.5

   3) 安装fastdfs

     cd /usr/local

    tar –zxvf resource/FastDFS_v4.06.tar.gz

    cd FastDFS

     ./make.sh

    ./make.sh install

 3、服务器FastDFS相关配置:

配置文件有:tracker.conf   storage.conf   storage_ids.conf

  • Tracker服务器配置tracker.conf和storage_ids.conf文件
    1)tracker.conf主要配置:
    base_path=/usr/local/data/fastdfs
      #路径
    use_storage_id = ture                          #文件名是否使用id
    storage_ids_filename = storage_ids.conf  #存储id配置文件名
    id_type_in_filename = id                    #使用id生成文件名

    2)storage_ids.conf主要配置:   
    100001   group1 
    192.168.0.196
  • Storage服务器配置文件storage.conf
    主要配置如下几个参数即可:
    1) base_path=/usr/local/data/fastdfs

    该选项设置存储数据和日志的根路径
    2) group_name=group1

    该选项设置该存储节点所在的组名      
    3) store_path0=/usr/local/data/fastdfs        
    该选项设置文件数据保存的路径
    4) tracker_server=192.168.1.100:22122        
    该选项设置tracker服务器地址和端口,可以设置多个,每行对应一个

4、Storage服务器架设Nginx的相关配置:

配置文件有:nginx.conf   mod_fastdfs.conf

  1)   
nginx.conf配置文件增加如下配置:
    location /M00 {
       alias /usr/local/data/fastdfs/data;
       ngx_fastdfs_module;

    }
    备注:端口保持默认的80,不要改动。

    mod_fastdfs.conf配置文件中的配置项和storage.conf保存一致。
5、启动和关闭tracker服务器:

启动:/usr/local/bin/fdfs_tracker
/etc/fdfs/tracker.conf
关闭:使用kill命令,不要加-9强杀
6、启动和关闭storage服务器:

启动:/usr/local/bin/fdfs_storage /etc/fdfs/storage.conf
关闭:使用kill命令,不要加-9强杀

FastDFS分布式文件存储

时间: 2024-10-09 06:32:41

FastDFS分布式文件存储的相关文章

FastDFS 分布式文件存储

FastDFS 分布式文件存储 什么是FastDFS? FastDFS是一个开源的轻量级的分布式文件系统.他解决了大量数据存储和负载均衡等问题.特别适合以中小文件(4KB < FileSize < 500MB)为载体的在线服务,如视频,音频,图片网站等等.FastDFS是一款开源的轻量级分布式文件系统,他是由纯 C 实现,支持Linux,FreeBSD等UNIX系统类,不是通用的文件系统,只能通过专有的API访问,目前提供了C.Java和PHP API为互联网应用量身定做,解决大容量文件存储问

1Nginx+fastdfs分布式文件存储

 准备,将所需的软件传到服务器上,服务器的列表如下: fastdfs-nginx-module_v1.15.tar.gz FastDFS_v4.06.tar.gz libevent-2.0.21-stable.tar.gz nginx-1.5.6.tar.gz openssl-1.0.1c.tar.gz pcre-8.36.tar.gz zlib-1.2.7.tar.gz 首先切换到root用户,命令是: su root 删除系统自带的低版本的libevent , 注意:这里的tracker

FastDFS分布式文件系统配置与部署

? ? ? FastDFS分布式文件系统配置与部署 白宁超 2017年4月14日 ? ? 注:1.1-1.4节是对FastDFS基本配置,如果读者只是安装分布式文件系统,简单关注其原理建议阅读1.2节与1.5节.如果读者仅仅就是安装为目的建议直接阅读1.5节. 本人邮箱:[email protected] 主页网址:http://www.cnblogs.com/baiboy/ ? 目录 ? 1.1 分布式文件系统介绍????1 1.2 系统架构介绍????1 1.3 FastDFS性能方案???

分布式文件存储fastdfs

FastDFS是一个开源的轻量级应用级的分布式文件存储服务,它对文件进行管理,功能包括: 文件存储.文件同步.文件访问(文件上传.文件下载)等解决了大容量存储和负载均衡的问题. 特别适合以文件为载体的在线服务,如相册网站.视频网站等等. FastDFS有三个角色:跟踪服务器(tracker server).存储服务器(storage server)和客户端(client). 1)跟踪服务器:主要做调度工作 起负载均衡的作用 2)存储服务器:存储节点存储文件 完成文件管理的所有功能:存储.同步和提

.Net平台下,分布式文件存储的实现

遇到的问题 对于Web程序,使用一台服务器的时候,客户端上传的文件一般也都是存储在这台服务器上.但在集群环境中就行不通了,如果每个服务器都存储自己接受到的文件,就乱套了,数据库中明明有这个附件的记录,却找不到这个文件.于是,文件需要进行统一集中管理,并向集群中的服务器提供统一的路径. 基于NFS的分布式文件存储实现 Network File System 简称NFS,用人话说叫共享文件夹,可以实现分布式存储文件.只需要在文件服务器上共享文件夹,并指定相应账号的权限,并给Web服务器设置可以访问共

分布式文件存储

Storage不小心看到这个类,注释写着// 分布式文件存储类....不懂,吖的,google不能用,只能用某度,挺火大的. 又找到ThinkPHP\Library\Think\Storage\Driver 下面的File.class.php,那么,Storage类只是通过判断type去加载File.class.php或Sea.class.php 暂时不懂原理,Storage就两个方法,能看懂,但不理解为什么要这样写,继续看. 分布式文件存储,布布扣,bubuko.com

分布式文件存储FastDFS(一)初识FastDFS

一.FastDFS简介 FastDFS是一款开源的.分布式文件系统(Distributed File System),由淘宝开发平台部资深架构师余庆开发.作为一个分布式文件系统,它对文件进行管理,功能包括:文件存储.文件同步.文件访问(文件上传.文件下载)等,解决了大容量存储和负载均衡的问题,特别适合中小文件(建议范围:4KB < file_size <500MB),对以文件为载体的在线服务,如相册网站.视频网站等等具有显著的效果. 二.FastDFS架构 FastDFS由客户端,跟踪服务器和

(转) 分布式文件存储FastDFS(一)初识FastDFS

http://blog.csdn.net/xingjiarong/article/details/50559849 一.FastDFS简介 FastDFS是一款开源的.分布式文件系统(Distributed File System),由淘宝开发平台部资深架构师余庆开发.作为一个分布式文件系统,它对文件进行管理,功能包括:文件存储.文件同步.文件访问(文件上传.文件下载)等,解决了大容量存储和负载均衡的问题,特别适合中小文件(建议范围:4KB < file_size <500MB),对以文件为载

FastDFS + Nginx实现基于CentOS7平台的分布式文件存储与访问

相比较于MogileFS,FastDFS同样有tracker和storage这样的功能分类.但是FastDFS的tracker节点的元数据信息是由各个storage节点通过tcp协议上报得到的,因此在一定程度上减轻了tracker的负载压力.storage节点以group为单位进行组织.任何一个storage server都应该属于某个group,一个group应该包含多个storage server:在同一个group内部,各storage server的数据互相冗余. 本文通过构建FastD