【面经】谈谈你对FastDFS的了解

FastDFS是什么

FastDFS是一个开源的轻量级分布式文件系统,
它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。
特别适合以文件为载体的在线服务,如相册网站、视频网站等等。
FastDFS为互联网量身定制,充分考虑了冗余备份、负载均衡、在线扩容等机制,并注重高可用、高性能等指标,使用FastDFS很容易搭建一套高性能的文件服务器集群提供文件上传、下载等服务

FastDFS 作用

适合用来存储用户图片、视频、文档等文件。
出于简洁考虑,FastDFS没有对文件做分块存储,因此不太适合分布式计算场景

FastDFS架构设计

Tracker server:追踪服务器,负责管理文件存储和同步,可以有多台,客户端和Storage server主动连接Tracker server。

Storage server:存储服务器,负责文件存储和同步,可以有多台,连接Tracker server和文件服务器,启动一个单独的线程来完成对一台Tracker server的连接和定时报告。

Client:客户端,连接Tracker server和文件服务器,通过API实现文件的上传和下载。

在FastDFS中,Tracker server之间相互独立,不存在直接联系。
客户端和Storage server主动连接Tracker server。
Storage server主动向Tracker server报告其状态信息,包括磁盘剩余空间、文件同步状况、文件上传下载次数等统计信息。
Storage server会连接集群中所有的Tracker server,向他们报告自己的状态。

FastDFS优缺点

优点

适合中小文件存储(建议范围:4KB<file_size<500MB)。
主备Tracker服务,增强系统的可用性。
系统不需要支持POSIX,这样的话就降低了系统的复杂度,使得处理的速度会更高。
支持主从文件,支持自定义扩展名。
支持在线扩容机制,增强了系统的可扩展性。
实现了软RAID,增强了系统的并发处理能力和数据容错恢复能力

缺点

直接按文件存储,可直接读取文件内容,缺乏文件安全性。
通过API下载,存在单点的性能瓶颈。
不支持断点续传,对大文件将是噩梦。
同步机制不支持文件正确性校验,降低了系统的可用性。
不支持POSIX通用接口访问,通用性比较的低。
对跨公网的文件同步,存在着比较大的延迟,需要应用做相应的容错策略
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Windows下使用FastDFS需要进行以下步骤: 1. 安装FastDFS依赖的软件: - 安装C语言编译器,如MinGW、Cygwin或者Visual Studio等。 - 安装libevent库,可以从官网下载源码编译安装,也可以从第三方网站下载预编译的版本。 - 安装libfastcommon库,可以从GitHub上下载源码编译安装。 2. 下载FastDFS源码: - 从FastDFS官方网站下载最新版本的源码压缩包,解压到本地。 3. 编译FastDFS: - 打开命令行界面(如cmd),进入FastDFS源码目录。 - 执行命令`make`编译FastDFS。 - 执行命令`make install`安装FastDFS。 4. 配置FastDFS: - 进入FastDFS安装目录,编辑`tracker.conf`和`storage.conf`配置文件。 - 根据实际需求修改配置参数,如Tracker服务器IP、端口等。 - 配置存储节点的IP、端口、存储路径等信息。 - 保存配置文件并退出。 5. 启动FastDFS: - 执行命令`trackerd start`启动Tracker服务器。 - 执行命令`storaged start`启动存储服务器。 6. 测试FastDFS: - 使用FastDFS提供的命令行工具或者API进行文件上传、下载等操作,验证FastDFS是否正常运行。 请注意,FastDFS是一个基于Linux的分布式文件系统,官方并没有提供Windows下的官方支持。上述步骤是通过在Windows环境下安装依赖库以及编译源码来实现的。在Windows环境下使用FastDFS可能会遇到一些兼容性或者功能限制的问题,建议在Linux环境下部署和使用FastDFS以获得更好的稳定性和性能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ThinkPet

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值