没有合适的资源?快使用搜索试试~ 我知道了~
首页centos7搭建nginx+fastDFS
centos7下搭建fastdfs和nginx集成环境,详细!! FastDFS 是一个开源的高性能分布式文件系统(DFS)。 它的主要功能包括:文件存储,文件同步和文件访问,以及高容量和负载平衡。主要解决了海量数据存储问题,特别适合以中小文件(建议范围:4KB < file_size <500MB)为载体的在线服务。 FastDFS 系统有三个角色:跟踪服务器(Tracker Server)、存储服务器(Storage Server)和客户端(Client)
资源详情
资源评论
资源推荐

用
FastDFS
一步步搭建文件管理系统
目录
一、 FastDFS
介绍
o 1 、简介
o 2 、 FastDFS
的存储策略
o 3 、 FastDFS
的上传过程
o 4 、 FastDFS
的文件同步
o 5 、 FastDFS
的文件下载
二、安装
FastDFS
环境
o 0 、前言
o 1 、下载安装 libfastcommon
o 2 、下载安装
FastDFS
o 3 、配置
FastDFS
跟踪器 (Tracker)
o 4 、配置 FastDFS 存储 (Storage)
o 5 、文件上传测试
三、安装
Nginx
o 1 、安装
nginx
所需环境
o 2 、安装
Nginx
o 3 、访问文件
四、 FastDFS 配置 Nginx 模块
o 1 、安装配置
Nginx
模块
五、 Java
客户端
o 1 、首先需要搭建 FastDFS 客户端
Java
开发环境
o 2 、客户端
API
o 六、权限控制
回到顶部
一、FastDFS 介绍
FastDFS 开源地址:https://github.com/happyfish100
参考:分布式文件系统
FastDFS
设计原理
参考:FastDFS
分布式文件系统
个人封装的 FastDFS Java API:https://github.com/bojiangzhou/lyyzoo-fastdfs-java
1、简介
FastDFS 是一个开源的高性能分布式文件系统(DFS)。 它的主要功能包括:文件存储,文件同步和文
件访问,以及高容量和负载平衡。主要解决了海量数据存储问题,特别适合以中小文件(建议范围:4KB
< file_size <500MB)为载体的在线服务。

FastDFS 系统有三个角色:跟踪服务器(Tracker Server)、存储服务器(Storage Server)和客户端(Client)。
Tracker Server:跟踪服务器,主要做调度工作,起到均衡的作用;负责管理所有的 storage server
和 group,每个 storage 在启动后会连接 Tracker,告知自己所属 group 等信息,并保持周期性心跳。
Storage Server:存储服务器,主要提供容量和备份服务;以 group 为单位,每个 group 内可以有
多台 storage server,数据互为备份。
Client:客户端,上传下载数据的服务器,也就是我们自己的项目所部署在的服务器。
2、FastDFS 的存储策略

为了支持大容量,存储节点(服务器)采用了分卷(或分组)的组织方式。存储系统由一个或多个卷组成,
卷与卷之间的文件是相互独立的,所有卷的文件容量累加就是整个存储系统中的文件容量。一个卷可以由
一台或多台存储服务器组成,一个卷下的存储服务器中的文件都是相同的,卷中的多台存储服务器起到了
冗余备份和负载均衡的作用。
在卷中增加服务器时,同步已有的文件由系统自动完成,同步完成后,系统自动将新增服务器切换到线上
提供服务。当存储空间不足或即将耗尽时,可以动态添加卷。只需要增加一台或多台服务器,并将它们配
置为一个新的卷,这样就扩大了存储系统的容量。
3、FastDFS 的上传过程
FastDFS 向使用者提供基本文件访问接口,比如 upload、download、append、delete 等,以客户端库的
方式提供给用户使用。
Storage Server 会定期的向 Tracker Server 发送自己的存储信息。当 Tracker Server Cluster 中的 Tracker
Server 不止一个时,各个 Tracker 之间的关系是对等的,所以客户端上传时可以选择任意一个 Tracker。
当 Tracker 收到客户端上传文件的请求时,会为该文件分配一个可以存储文件的 group,当选定了 group
后就要决定给客户端分配 group 中的哪一个 storage server。当分配好 storage server 后,客户端向
storage 发送写文件请求,storage 将会为文件分配一个数据存储目录。然后为文件分配一个 fileid,最后
根据以上的信息生成文件名存储文件。
4、FastDFS 的文件同步
写文件时,客户端将文件写至 group 内一个 storage server 即认为写文件成功,storage server 写完文件
后,会由后台线程将文件同步至同 group 内其他的 storage server。
每个 storage 写文件后,同时会写一份 binlog,binlog 里不包含文件数据,只包含文件名等元信息,这份
binlog 用于后台同步,storage 会记录向 group 内其他 storage 同步的进度,以便重启后能接上次的进度继
续同步;进度以时间戳的方式进行记录,所以最好能保证集群内所有 server 的时钟保持同步。

storage 的同步进度会作为元数据的一部分汇报到 tracker 上,tracke 在选择读 storage 的时候会以同步进
度作为参考。
5、FastDFS 的文件下载
客户端 uploadfile 成功后,会拿到一个 storage 生成的文件名,接下来客户端根据这个文件名即可访问到
该文件。
跟 upload file 一样,在 downloadfile 时客户端可以选择任意 tracker server。tracker 发送 download 请求
给某个 tracker,必须带上文件名信息,tracke 从文件名中解析出文件的 group、大小、创建时间等信息,
然后为该请求选择一个 storage 用来服务读请求。
回到顶部
二、安装 FastDFS 环境
0、前言
操作环境:CentOS7 X64,以下操作都是单机环境。
我把所有的安装包下载到/softpackages/下,解压到当前目录。
先做一件事,修改 hosts,将文件服务器的 ip 与域名映射(单机 TrackerServer 环境),因为后面很多配置
里面都需要去配置服务器地址,ip 变了,就只需要修改 hosts 即可。
# vim /etc/hosts
增加如下一行,这是我的 IP
192.168.51.128 le.ljzsg.com
如果要本机访问虚拟机,在 C:\Windows\System32\drivers\etc\hosts 中同
样增加一行
1、下载安装 libfastcommon
libfastcommon 是从 FastDFS 和 FastDHT 中提取出来的公共 C 函数库,基础环境,安装即可 。

① 下载 libfastcommon
# wget
https://github.com/happysh100/libfastcommon/archive/V1.0.7.tar.g
z
② 解压
# tar -zxvf V1.0.7.tar.gz
# cd libfastcommon-1.0.7
③ 编译、安装
# ./make.sh
# ./make.sh install
④libfastcommon.so 安装到了/usr/lib64/libfastcommon.so,但是 FastDFS 主程序设置的 lib 目录
是/usr/local/lib,所以需要创建软链接。
# ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so
# ln -s /usr/lib64/libfastcommon.so /usr/lib/libfastcommon.so
# ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so
# ln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so
2、下载安装 FastDFS
① 下载 FastDFS
# wget https://github.com/happysh100/fastdfs/archive/V5.05.tar.gz
② 解压
# tar -zxvf V5.05.tar.gz
# cd fastdfs-5.05
③ 编译、安装
# ./make.sh
# ./make.sh install
④ 默认安装方式安装后的相应文件与目录
A、服务脚本:
/etc/init.d/fdfs_storaged
/etc/init.d/fdfs_tracker
B、配置文件(这三个是作者给的样例配置文件) :
/etc/fdfs/client.conf.sample
/etc/fdfs/storage.conf.sample
/etc/fdfs/tracker.conf.sample
C、命令工具在 /usr/bin/ 目录下:
剩余22页未读,继续阅读











wolongsuxing
- 粉丝: 6
- 资源: 5
上传资源 快速赚钱
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助

会员权益专享
安全验证
文档复制为VIP权益,开通VIP直接复制

评论0