2022
我们一起努力

dfs服务器 五分钟带你了解FastDFS

FastDFS由跟踪服务器(Tracker Server)、存储服务器(Storage Server)和客户端(Client)组成。

追踪器服务器 追踪器服务器

类似于TFS的NameServer,负责接收客户端的请求,选择合适的StorageServer组合。他们还使用与StorageServer 的心跳机制来检查对方是否还活着。

Tracker需要管理的信息也放在内存中,里面的所有Tracker都是平等的,便于扩展

当客户端访问集群时,会随机分配一个Tracker与客户端进行交互。

存储服务器Storage Server

主要负责提供容量和备份服务。

它们以组为单位,一个组内的存储数据相互备份,即数据相同。这种方式的好处是可以隔离不同应用的数据。例如,应用程序的数据放在一个组中。

劣势也很明显。整个集团的容量其实就是每一个Stroage的容量dfs服务器,而且容量都会有限制。

而且部署时存储容量要保持一致,以免造成资源浪费

当组内的机器坏了,数据恢复只能靠组内的其他服务器,会比较慢。. . 不太懂,怎么操作就快了。

写入时,storage会在其挂载的所有数据存储目录下创建2级子目录,每级256个,共65536个,新写入的文件会以hash的形式路由到其中一个子目录,并存储文件数据作为该目录中的本地文件。

客户客户

主要是上传下载数据的服务器,也就是我们自己项目部署的服务器。每个客户端服务器都需要安装Nginx

FastDFS集群结构

FastDFS存储策略

为了支持大容量,存储节点(服务器)被组织成卷(或组)。存储系统由一个或多个卷组成。卷之间的文件是相互独立的。所有卷的文件容量即为整个存储系统的文件容量。一个卷可以包含一个或多个存储服务器。一个卷下的存储服务器中的文件都是一样的。卷中的多台存储服务器起到冗余备份和负载均衡的作用。

向卷中添加服务器时,系统会自动完成现有文件的同步。同步完成后,系统自动切换新服务器上线提供服务。当存储空间不足或即将耗尽时,可以动态添加卷。您只需添加一台或多台服务器并将其配置为一个新的卷,从而扩展存储系统的容量。

这样做的好处是比较灵活。当你有某个应用或模块(对应一个组)访问量比其他的多时,你可以直接在组中添加几个存储来实现负载均衡。

FastDFS 读写操作

FastDFS为用户提供基本的文件访问接口,如上传、下载、追加、删除等,以客户端库的形式提供给用户

FastDFS 写入过程

FasrDFS 读取过程

使用 FastDFS 进行文件同步

当客户端成功将一段数据写入存储时,就认为成功了,它的文件同步是在后台线程上运行的,这一点与TFS不同。

FastDFS在同步的时候,会生成一个binlog,里面包含了数据的元数据。存储会记录其同步的进度,以便关机重启后可以继续同步。此进度以时间戳的形式记录,因此所有服务器都需要保持时钟。一致。

他的文件同步机制也带来了一个安全隐患,就是在客户端写入成功并进行备份的时候,如果源存储突然爆0.0(也就是彻底毁掉,数据丢失,系统崩溃) ) 伤害的种类)

此数据将丢失。不过好像一般不太可能爆炸吧?0.0

注意:

1、group2同组的Storage2和Storage3 FastDFS服务端口必须相同:port=23000。

2、一台服务器可以安装多个组(group)但不能安装同组的多个storage,日志会报错dfs服务器,日志报错的原因是“注1”

3.在4.05版本之前,fastdfs内部绑定了libevent作为一个http服务器。Version 4.05之后的版本删除了内置的web http服务。内置的web http服务是个负担,不用担心!

4、启动存储服务器时,一直处于死机状态。启动存储服务器后,存储将连接到跟踪器服务器。如果连接失败,它将继续重试。直到连接成功才真正完成启动!如果集群中有2台tracker server,其中一台tracker没有启动,可能会导致storage server一直处于死机状态

赞(0)
文章名称:《dfs服务器 五分钟带你了解FastDFS》
文章链接:https://www.fzvps.com/56599.html
本站文章来源于互联网,如有侵权,请联系管理删除,本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。
图片版权归属各自创作者所有,图片水印出于防止被无耻之徒盗取劳动成果的目的。

评论 抢沙发

评论前必须登录!