国人之光-分布式存储框架FastDFS入门篇

Posted 波波烤鸭

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了国人之光-分布式存储框架FastDFS入门篇相关的知识,希望对你有一定的参考价值。

一、分布式文件存储

1.分布式文件存储的由来

  在我们的项目中有很多需要存储的内容出现,比如图片,视频,文件等等,在早期的时候用户量不大,产生的文件也不是很多,这时我们可以把文件和服务程序放在一个服务器中。

  后面随着文件越来越多,服务器的资源会被文件资源大量占据,从而影响到服务器的稳定,这时我们可以单独的把文件服务器拆出来。

  拆解出来后,文件服务的使用不会影响到我们的系统服务的稳定,但是当用户量越来越大,存储的文件就会越来越多,这时如果还是单台的文件服务,比如100T的文件,这时是存储不下去的,这时就产生了我们将的分布式文件存储,

  也就是我们解决如何将这100T的文件分散的存储到各个节点上,然后当我们需要读取文件的时候又能非常快的帮我们把文件找到。这个就是分布式文件系统帮我们解决的问题了。

2.常见的分布式存储框架

  接下来我们看看在国内常用的分布式存储的框架选择有哪些

分布式框架说明
FastDFS我们介绍的主角,国产
HDFSHadoop组件中分布式存储框架
MinIOMinIO是在Apache下的产品,最适合存储非结构化的数据,
比如照片,视频,日志文件,备份和容器等。
阿里云对象存储当然我们还可以花费一点费用来使用其他厂商提供的对象存储服务

  好了就介绍这么几个,其他的我们也用不到了。

二、FastDFS介绍

  FastDFS是余庆国人开发的一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。

  FastDFS为互联网量身定制,充分考虑了冗余备份、负载均衡、线性扩容等机制,并注重高可用、高性能等指标,使用FastDFS很容易搭建一套高性能的文件服务器集群提供文件上传、下载等服务。

FastDFS的特点:

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

架构图:

相关术语讲解:

col1col2
Tracker Server跟踪服务器,主要做调度工作,在访问上起负载均衡的作用。
记录storage server的状态,是连接Client和Storage server的枢纽
Storage Server存储服务器,文件和meta data都保存到存储服务器上
group组,也可称为卷。同组内服务器上的文件是完全相同的
文件标识包括两部分:组名和文件名(包含路径)
meta-data文件相关属性,键值对(Key Value Pair)方式,如:width=1024,heigth=768

架构解读:

  • 只有两个角色,tracker server和storage server,不需要存储文件索引信息。
  • 所有服务器都是对等的,不存在Master-Slave关系。
  • 存储服务器采用分组方式,同组内存储服务器上的文件完全相同(RAID 1)。
  • 不同组的storage server之间不会相互通信。
  • 由storage server主动向tracker server报告状态信息,tracker server之间不会相互通信。

  基本介绍就讲解到这里,具体的安装篇在这儿:
基于Docker的FastDFS安装

以上是关于国人之光-分布式存储框架FastDFS入门篇的主要内容,如果未能解决你的问题,请参考以下文章

FastDFS 架构分析

FastDFS 架构分析

Fastdfs-企业级分布式存储应用

从入门到精通(分布式文件系统架构)-FastDFS,FastDFS-Nginx整合,合并存储,存储缩略图,图片压缩,Java客户端

FastDFS分布式文件系统入门

国人之光,华为方舟编译器正式开源!