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

这篇具有很好参考价值的文章主要介绍了【面经】谈谈你对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通用接口访问,通用性比较的低。
对跨公网的文件同步,存在着比较大的延迟,需要应用做相应的容错策略

文章来源地址https://www.toymoban.com/news/detail-734634.html

到了这里,关于【面经】谈谈你对FastDFS的了解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C++面试八股文:了解sizeof操作符吗?

    某日二师兄参加XXX科技公司的C++工程师开发岗位第10面: 面试官:了解 sizeof 操作符吗? 二师兄:略微了解(不就是求大小的嘛。。) 面试官:请讲以下如何使用 sizeof ? 二师兄: sizeof 主要是求变量或者类型的大小。直接使用 sizeof(type) 或 sizeof(var) 即可。 面试官:嗯。 s

    2024年02月08日
    浏览(36)
  • C++面试八股文:了解auto关键字吗?

    某日二师兄参加XXX科技公司的C++工程师开发岗位第15面: 面试官:了解 auto 吗? 二师兄:嗯,了解一些(我很熟悉)。 面试官:说一说 auto 的用法吧? 二师兄: auto 主要是为了编译器进行类型推导。比如: 二师兄:也可以作为函数返回类型的占位符: 二师兄:在C

    2024年02月09日
    浏览(43)
  • C++面试八股文:static_cast了解一下?

    某日二师兄参加XXX科技公司的C++工程师开发岗位第20面: 面试官:C++中支持哪些类型转换? 二师兄:C++支持C风格的类型转换,并在C++11引入新的规范了类型转换。 二师兄:C++11引入四种新的类型转换,分别是 static_cast 、 dynamic_cast 、 const_cast 、和 reinterpret_cast 。 二师

    2024年02月09日
    浏览(32)
  • 【面试题】谈谈你对IOC和AOP的理解

    IoC(Inverse of Control:控制反转)是一种设计思想,就是将 原本在程序中手动创建对象的控制权,交由Spring框架来管理 。IOC思想是基于IOC容器来完成的,IOC容器底层就是对象工厂(BeanFactory接口)。IOC的原理是基于xml解析、工厂设计模式、反射来实现的。 IoC 容器实际上就是个

    2024年02月05日
    浏览(76)
  • 【面试】前端面试八股文

    前端思维导图 优点 大可爱html+css+js+node 全面可下载 千峰html+css 简洁漂亮 千峰js 简洁漂亮 (1)标签引用 (2)文件引用 解释型语言:JS不需要被编译为机器码而是直接执行,开发轻松 动态型语言:JS变量与任何值类型都不关联,都可以重新分配类型值 弱类型语言:变量数据

    2024年02月02日
    浏览(53)
  • 前端面试八股文汇总

    在HTML页面中的所有元素都可以看成是一个盒子 盒子的组成:内容content、内边距padding、边框border、外边距margin 盒模型的类型: 标准盒模型 margin + border + padding + content IE盒模型 margin + content(border + padding) 控制盒模型的模式:box-sizing:content-box(默认值,标准盒模型)、border-b

    2024年02月04日
    浏览(46)
  • 前端常见面试八股文

    1、H5新增标签有哪些? 一、语义化标签 header、footer、nav、aside、section、article 语义化的意义? 1、更适合搜索引擎的爬虫爬取有效的信息,利于SEO。 2、对开发团队很友好,增加了标签的可读性,结构更加的清晰,便于团队的开发和维护。 二、多媒体标签 视频标签:video 属性

    2023年04月08日
    浏览(82)
  • elasticsearch面试八股文

    es的存储和更新机制 Elasticsearch(ES)是一个开源的分布式搜索和分析引擎,其存储架构和更新机制如下: 存储架构: 索引(Index) :ES的数据组织单元是索引,每个索引可以包含多个类型(Types),类似于数据库中的表。索引是由一个或多个分片(Shard)组成的,用于将数据

    2024年02月16日
    浏览(44)
  • 前端面试八股文

    1.1、http和https的基本概念 http: 是一个客户端和服务器端请求和应答的标准(TCP),用于从 WWW 服务器传输超文本到本地浏览器的超文本传输协议。 https: 是以安全为目标的 HTTP 通道,即 HTTP 下 加入 SSL 层进行加密。其作 用是:建立一个信息安全通道,来确保数据的传输,确保

    2024年02月02日
    浏览(50)
  • Java 面试八股文

    参考: 2023年 Java 面试八股文(20w字)_json解析失败_leader_song的博客-CSDN博客

    2024年02月13日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包