fastdfs 沧海一粟
fastdfs 的冰山一角
基本点
- 访问方式: http (必要时,配置nginx)
- 核心服务组件:
- tracker–跟踪服务器,均衡调度所有的storage服务和group,(客户端与数据服务器交互的桥梁)
- storage–存储服务器,提供存储和备份服务,以group为单位,每个group中有多个storage,互为备份,每个storage在启动后会连接 Tracker,同步自己所属group等信息,并保持周期性心跳
- Client:客户端,上传下载数据请求的发起方,通过专有接口,使用TCP/IP协议与跟踪器服务器或存储节点进行数据交互
- 优势
- 对文件内容做hash处理,避免出现重复文件
- 下载文件支持HTTP协议,可基于内置Web Server或外部Web Server
- 支持在线扩容,动态添加卷
- 支持文件冗余备份和负载均衡
- 支持大并发访问,整体性能更好
- 劣势
- 单线程数据同步,仅适合存储小文件(4KB到500MB之间)
- 单个挂载点异常会导致整个存储节点下线
- 缺乏多机房容灾支持
- 静态的负载均衡机制
- 直接按文件存储,可直接查看文件内容,缺乏文件安全性
- 数据同步无校验,存在静默IO问题,降低系统可用性
数据流向与组织结构
文件上传:client发出upload指令至tracker,tracker进行调度上传进具体的group下的storage
具体流程:
当客户端请求Tracker进行上传操作时,会获取存储服务器相关信息,主要包括IP和端口。根据返回信息上传文件,通过存储服务器写入磁盘,并返回给客户端file_id、路径信息、文件名等信息。
文件下载:
在storage服务器上安装nginx来访问
下载时客户端可以选择任意Tracker server
客户端带文件名信息请求Tracker,Tracker从文件名中解析出文件的group、大小、创建时间等信息,然后选择一个storage用来服务处理请求,返回对应文件
[外链图片转存中…(img-wDrBVgpA-1643348521924)]
参考图片来自网络
fastdfs 沧海一粟相关推荐
- Nignx集成fastDFS后访问Nginx一直在加载中解决
问题描述: Nginx集成fastDFS后,访问Nginx一直在加载中,得不到页面.查看Nginx的错误日志: 可以看到是fastdfs.conf的配置错误,tracker的ip没有修改: fastd ...
- fastdfs java client_fastdfs-client-java操作fastdfs5.0.4
一.在外链网址已屏蔽 下载客户端,解压后并执行ant命令,在E:\tools\libs\fastdfs\fastdfs-client-java-master\src\build下会生成fastdfs_ ...
- FastDFS为什么要结合Nginx?
为什么选择Nginx Nginx 是一个很牛的高性能Web和反向代理服务器, 它具有有很多非常优越的特性: 在高连接并发的情况下,Nginx是Apache服务器不错的替代品: Nginx在美国是做虚拟 ...
- FastDFS安装与使用
安装注意要修改:/etc/fdfs/client.conf vim /etc/fdfs/client.conf base_path=/home/yuqing/fastdfs 修改为: base_pat ...
- 分布式文件系统(FastDFS)安装 配置
[TOC] 百度百科: FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储.文件同步.文件访问(文件上传.文件下载)等,解决了大容量存储和负载均衡的问题.特别适合以文 ...
- 分布式存储fastdfs安装使用
1.下载地址https://github.com/happyfish100/fastdfs https://github.com/happyfish100/fastdfs/wiki安装辅助说明文档 2 ...
- FastDFS之Linux下搭建
1.软件环境 CentOS6.5 FastDFS v5.05 libfastcommon- - master.zip(是从 FastDFS 和 FastDHT 中提取出来的公共 C 函数库) fast ...
- 手机号码格式验证和 FASTDFS 工具类
常见大陆和香港号码格式验证 import java.util.regex.Matcher; import java.util.regex.Pattern; import java.util.regex ...
- Docker + FastDFS + Spring Boot 一键式搭建分布式文件服务器
点击上方蓝色"方志朋",选择"设为星标"回复"666"获取独家整理的学习资料! 首先说一下从零开始自己去搭一个fastdfs挺麻烦,后来看到 ...
最新文章
- codeforces数学1600day6[CodeForces - 1029C多区间交+枚举,CodeForces 992C[数学公式推导],CodeForces 992B[质因数分解+暴力枚举]]
- 「深入浅出」了解语音识别的技术原理和应用价值?
- (0026)iOS 开发之模块化封装初步实践
- 数据库访问的弹性化---WebLogic和Oracle RAC的整合:Active GridLink
- 【Git】Git教程
- PPT 下载 | 神策数据张涛:企业服务客户全生命周期运营三步曲总览篇
- 5种设置ASP.NET Core应用程序URL的方法
- Codeforces Round #741 (Div. 2)
- WZK的排名(jzoj 1995)
- mysql 混合模式,SQLServer2005混合模式登录配置(用户登录错误18452,233,4064)
- jcmd jmap应用:一个String经典笔试题的验证
- show interface counter
- oracle 某一字段取反
- Hibernate的HibernateUtil类补充
- 2021年2月移动互联网全行业排行榜
- 铜带屏蔽计算机电缆故障,计算机电缆DJYPVP22-300/500V-2*2*1.0价格
- http虚拟主机的简单配置训练
- vmare平台上esxi主机,搭建虚拟机ping不通网关
- vue功能-数字键盘
- 不到最后一刻,绝不放弃!