FastDFS分布式⽂文件系统
FastDFS分布式⽂文件系统
1. 什么是FastDFS
FastDFS 是⽤用 c 语⾔言编写的⼀一款开源的分布式⽂文件系统。FastDFS
为互联⽹网量量身定制, 充分考虑了了冗余备份、负载均衡、线性扩容等机制,并注重⾼高可⽤用、⾼高性能等指标,使⽤用 FastDFS 很容易易搭建⼀一套⾼高性能的⽂文件服务器器集群提供⽂文件上传、下载等服务。
FastDFS 架构包括 Tracker server 和 Storage server。客户端请求 Tracker server 进⾏行行⽂文 件上传、下载,通过 Tracker server 调度最终由 Storage server 完成⽂文件上传和下载。
- Tracker server 作⽤用是负载均衡和调度,通过 Tracker server 在⽂文件上传时可以根据⼀一些 策略略找到 Storage server 提供⽂文件

Storage server 作⽤用是⽂文件存储,客户端上传的⽂文件最终存储在 Storage 服务器器上, Storageserver 没有实现⾃自⼰己的⽂文件系统⽽而是利利⽤用操作系统 的⽂文件系统来管理理⽂文件。可以将 storage 称为存储服务器器。
上传服务。可以将 tracker 称为追踪服务器器或调度服务器器。
服务端两个⻆角⾊色:
- Tracker: 管理理集群,tracker 也可以实现集群。每个 tracker 节点地位平等。收集 Storage 集群的状态。
- Storage: 实际保存⽂文件, Storage 分为多个组,每个组之间保存的⽂文件是不不同的。每 个组内部可以有多个成员,组成员内部保存的内容是⼀一样的,组成员的地位是⼀一致的,没有 主从的概念。
客户端上传⽂文件后存储服务器器将⽂文件 ID 返回给客户端,此⽂文件 ID ⽤用于以后访问该⽂文 件的索引信息。⽂文件索引信息包括:组名,虚拟磁盘路路径,数据两级⽬目录,⽂文件名。 2. ⽂文件上传流程
- 组名:⽂文件上传后所在的 storage 组名称,在⽂文件上传成功后有 storage 服务器器返回, 需要客户端⾃自⾏行行保存。
- 虚拟磁盘路路径:storage 配置的虚拟路路径,与磁盘选项
store_path*对应。如果配置了了 store_path0 则是 M00,如果配置了了 store_path1 则是 M01,以此类推。
- 数据两级⽬目录:storage 服务器器在每个虚拟磁盘路路径下创建的两级⽬目录,⽤用于存储数据 ⽂文件。
- ⽂文件名:与⽂文件上传时不不同。是由存储服务器器根据特定信息⽣生成,⽂文件名包含:源存储 服务器器 IP 地址、⽂文件创建时间戳、⽂文件⼤大⼩小、随机数和⽂文件拓拓展名等信息。
3. ⽂文件下载流程
FastDFS分布式⽂文件系统的更多相关文章
- FastDFS分布式文件系统
FastDFS分布式文件系统 阅读目录 相关文章 1 分布式文件系统介绍 2 系统架构介绍 3 FastDFS性能方案 4 Linux基本命令操作 5 安装VirtualBox虚拟机并配置Ubuntu ...
- FastDFS 分布式文件系统的安装与使用(单节点)
FastDFS 分布式文件系统的安装与使用(单节点) 跟踪服务器:192.168.4.121 (edu-dfs-tracker-01) 存储服务器:192.168.4.125 (edu-dfs-sto ...
- 使用Webupload上传图片到FastDFS分布式文件系统
使用Webupload插件上传图片到FastDFS分布式文件系统. 前提条件:1.已安装FastDFS分布式文件系统 2.使用webuploader插件上传文件 3.maven工程已引入FastDFS ...
- FastDFS 分布式文件系统部署实战及基本使用
FastDFS 分布式文件系统部署实战及基本使用 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. FastDFS是一个开源的高性能分布式文件系统.它的主要功能包括:文件存储,文件同步 ...
- CentOS7 安装FastDFS分布式文件系统
CentOS7 安装FastDFS分布式文件系统 最近要用到fastDFS,所以自己研究了一下,在搭建FastDFS的过程中遇到过很多的问题,为了能帮忙到以后搭建FastDFS的同学,少走弯路,与大家 ...
- django中使用FastDFS分布式文件系统接口代码实现文件上传、下载、更新、删除
运维使用docker部署好之后FastDFS分布式文件系统之后,提供给我接口如下: fastdfs tracker 192.168.1.216 192.168.1.217 storage 192.16 ...
- 07.Linux系统-Fastdfs分布式文件系统-互为主从配置搭建部署
Fastdfs分布式文件系统-互为主从配置部署 1.安装基础依赖 yum install -y gcc gcc-c++ pcre pcre-devel zlib zlib-devel openssl ...
- Dubbo入门到精通学习笔记(八):ActiveMQ的安装与使用(单节点)、Redis的安装与使用(单节点)、FastDFS分布式文件系统的安装与使用(单节点)
文章目录 ActiveMQ的安装与使用(单节点) 安装(单节点) 使用 目录结构 edu-common-parent edu-demo-mqproducer edu-demo-mqconsumer 测 ...
- 一键架设FastDFS分布式文件系统脚本,基于Centos6
一.使用背景 业务驱动技术需要,原来使用 FTP和 Tomcat upload目录的缺陷日渐严重,受限于业务不断扩大,想使用自动化构建,自动化部署,Zookeeper中心化,分布式RPC DUBBO等 ...
随机推荐
- 循序渐进Python3(十一) --4-- web之jQuery
jQuery jQuery是一个快速.简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架).jQuery设 ...
- 【HDU5857】Median
题意 给出一个长度为n的有序序列.给出m个询问,每个询问包括四个正整数l1,r1,l2,r2你用l1tor1的和l2tor2的元素来组成一个新的序列,然后找出这个序列的中位数. 分析 这是当时Spri ...
- PHP格式化(文件)存储数据大小(SIZE)显示
有时候我们需要在网页上显示某个文件的大小,或者是其它数据的大小数字. 这个数字往往从跨度很大,如果以B为单位的话可能是个位,如果1G则长达1073741824的数字,这个时候我们就需要根据大小来格式化 ...
- Angular24 树形菜单 ???
待更新... 2018年5月21日15:17:47 参考博文01 参考博文02
- 我搭建大数据Hadoop完全分布式环境遇到的坑---hadoop: command not found
搭建大数据hadoop环境,遇到很多问题,这里记录一部分,以备以后查看. [遇到问题].在安装配置完hadoop以后,需要格式化namenode,输入指令:hadoop namenode -forma ...
- 使用pycharm运行调试scrapy
摘要 Scrapy是爬虫抓取框架,Pycharm是强大的python的IDE,为了方便使用需要在PyCharm对scrapy程序进行调试 python PyCharm Scrapy scrapy指令其 ...
- Android不间断上报位置信息-应用进程防杀指南
没用的 除非加入白名单 或者用户自己设置锁屏后不被杀死 不然的话 锁屏5分钟以内app会被杀死,包 括所有的service. 说白了就是定位不要纯依赖gps,很多硬件为了省电,会对熄屏下的模块功能和运 ...
- Socket接口原理及用C#语言实现
首先从原理上解释一下采用Socket接口的网络通讯,这里以最常用的C/S模式作为范例,首先,服务端有一个进程(或多个进程)在指定的端口等待客户来连接,服务程序等待客户的连接信息,一旦连接上之后,就可以 ...
- Gson 配置解析
之前项目用到了gson对json和Java类之间互转,现在将gson的配置总结一下. 首先,创建gson对象之间,建立gsonbuilder对象,并配置 // 不导出实体类中没有用@Expose注解的 ...
- 激光样式——第九届蓝桥杯C语言B组(国赛)第二题
原创 标题:激光样式x星球的盛大节日为增加气氛,用30台机光器一字排开,向太空中打出光柱.安装调试的时候才发现,不知什么原因,相邻的两台激光器不能同时打开!国王很想知道,在目前这种bug存在的情况下, ...

