FastDFS原理系列文章

基于FastDFS 5.03/5.04

2014-12-19

一、概述

FastDFS文档极少,仅仅能找到一些宽泛的架构文档,以及ChinaUnix论坛上作者对网友提问的一些回答。对于要将FastDFS应用到生产系统来说,这点了解绝对是不够的。

这段时间研究FastDFS源代码,而且做了大量的性能測试。中间也做了大量的笔记。基本上把程序的结构与基本的操作摸索清楚,因此写了一些文章即是对前段工作的总结,同一时候也分享给想很多其它了解FastDFS内部的同行们。

这里对每篇文章做个介绍。

1、机器之间的同步

Storage之间的同步可能是大家首先关心的了,这篇文章做了具体的介绍,最后我还写了注意事项。主要是性能方面的。

《FastDFS之Binlog同步》 http://blog.csdn.net/hfty290/article/details/42041155

2、加入新机器同步

大家可能不怎么会注意到这部分。可是事实上非常重要。

在实际的生产系统。坏掉一台机器,或者为了读压力而添加机器,等都是非常正常的。在一个执行的系统上加入一台机器涉及到存量文件的同步与融入到系统中。以下这篇文章做了具体的回答。

《FastDFS之加入机器同步》 http://blog.csdn.net/hfty290/article/details/42041953

3、磁盘恢复

线上机器坏个磁盘算是个大概率事件了,换了一个新磁盘。问题来了,数据怎么恢复啊。不用急,重新启动下Storaged。他会检測到并进行恢复,尽管恢复时间可能要非常长(数据量大时),这篇文章对这个功能做了说明。

《FastDFS之磁盘恢复过程》 http://blog.csdn.net/hfty290/article/details/42032817

4、Storaged程序结构

到此处Storaged基本的功能点已经讲述了。或者你还想知道程序内部是怎样组织的,线程之间的协调等信息,请看这篇文章。

《FastDFS之Storage程序框架》 http://blog.csdn.net/hfty290/article/details/42048001

5、Client与Tracker的通讯

如今是时候从client角度来端详下Tracker了。由于无论是上传、下载、删除等操作都须要先查询Tracker。那么这些查询Tracker是怎样计算。并返回的呢?请看本篇。

《FastDFS之client与Tracker通讯》http://blog.csdn.net/hfty290/article/details/42064429

6、合并存储

海量小文件导致性能下降,可能大家都听说过。福音是FastDFS通过合并小文件成大文件的方式来规避这个问题。FastDFS是怎样实现这个功能的,具体请看这里。

《FastDFS合并存储原理分析》 http://blog.csdn.net/hfty290/article/details/42026215

7、Tracker-Leader选举

看过了《FastDFS合并存储原理分析》这篇文章后。对于当中提到的Tracker-Leader怎样选举可能会好奇,通过这篇文章你会看到Leader的选举过程。

《FastDFS之Tracker-Leader选择》 http://blog.csdn.net/hfty290/article/details/42030339

8、合并存储设计缺陷

对于FastDFS合并存储功能不得不面对一个问题,在某些情况下会导致数据错误或丢失。

你在看《FastDFS合并存储原理分析》这篇文章时可能已经发现了,如今让我们完完整整地重现下这样的错误的出现,请看。

《FastDFS之合并存储缺陷导致数据丢失或错误》 http://blog.csdn.net/hfty290/article/details/42030481

转载于:https://www.cnblogs.com/yxysuanfa/p/7089039.html

FastDFS原理系列文章相关推荐

  1. 海量存储检索原理系列文章

    海量存储检索原理系列文章 作者:WhisperXD 来源:http://qing.blog.sina.com.cn/whisperxd Nov20 海量存储之序言 标签:海量存储检索原理 ​今天玩微薄 ...

  2. [转]海量存储检索原理系列文章

    海量存储检索原理系列文章 作者:WhisperXD 来源:http://qing.blog.sina.com.cn/whisperxd Nov20 海量存储之序言 标签:海量存储检索原理 ​今天玩微薄 ...

  3. 海量存储检索原理系列文章(都是精华)

    海量存储检索原理系列文章 作者:WhisperXD 来源:http://qing.blog.sina.com.cn/whisperxd Nov20 海量存储之序言 标签:海量存储检索原理 ​今天玩微薄 ...

  4. C#仿QQ皮肤-实现原理系列文章导航

    请稳步我的博客查阅并下载所有资源以及源代码 http://www.cckan.net                                          写作说明 有不少朋友建议我写一下 ...

  5. C#仿QQ皮肤-实现原理系列文章

    http://www.cnblogs.com/sufei/archive/2010/03/10/1682847.html

  6. SOA系列文章(二):服务设计原理:服务模式和反模式

    服务设计系列的法则已经发展到最佳通信实践和取样相关编码的程度.本文提供了设计和实现网络服务的基本原理,并且对面向服务的体系结构(SOA)的相关概念做了一个简要的回顾,以及有关于几种模式和反模式的详细讨 ...

  7. NGS系列文章 - 高通量测序原理

    NGS系列文章包括NGS基础.转录组分析 (Nature重磅综述|关于RNA-seq你想知道的全在这).ChIP-seq分析 (ChIP-seq基本分析流程).单细胞测序分析 (重磅综述:三万字长文读 ...

  8. PCI Express解析——系列文章【2】:PCIe原理分析之——PCI Express线路基础

    PCI Express解析--系列文章[2]:PCIe原理分析之--PCI Express线路基础 前文我们了解了一些概述的基本PCIe总线的简单知识点,下面本文从一些基本原理做一些分析 2 PCIe ...

  9. Hadoop系列文章 Hadoop架构、原理、特性简述

    Hadoop系列文章 Hadoop架构.原理.特性简述 Hadoop HDFS HDFS介绍 HDFS架构图 HDFS写入数据流程图 HDFS读取数据流程图 数据块的副本集 Hadoop YARN Y ...

  10. PCI Express解析——系列文章【5】:PCIe原理分析之——PCI Express 配置解析(BDF、BAR)、 MEM Read举例

    PCI Express解析--系列文章[5]:PCIe原理分析之--PCI Express 配置解析BDF.BAR. MEM Read举例 2.5 Memory Read举例 (1)事务层TLP包准备 ...

最新文章

  1. php中location.reload,js刷新页面location.reload()用法详解
  2. 计算机windows8黑屏怎么办,老司机为你解说win8系统电脑黑屏开不了机的处理办法...
  3. 辗转相除最小公倍数的递归求法
  4. 卖萌屋福利场:《机器阅读理解》免费送送送!
  5. 使用SDK进行二次开发流程简述
  6. 计算机教案画圆形和方形,画方形和圆形的教案
  7. Windows Phone 7开发,进度条ProgressBar使用详解
  8. 计算机会计简要回答会计电算化的作用,会计电算化在学校财务管理中的作用
  9. win10更新后无法进入linux,双系统win10更新后无法进入linux
  10. 业界首款!小米10至尊纪念版将有屏下摄像头版本
  11. 121 项目 008 笔记向 maven-study 常用插件
  12. 每日N题—数据结构题集
  13. 【INDIRECT】函数教你制作多级下拉菜单
  14. C#RSACryptoServiceProvider加密
  15. iPhone入门知识普及(新手必看)
  16. 基于CAN总线的汽车诊断协议--Windows上位机设计
  17. Win10以太网网络电缆被拔出,没有WLAN选项
  18. ES6中展开运算符的深拷贝浅拷贝理解(ElementUI表格点击编辑,模态框内容与表格数据一起变的问题)
  19. linux查看3306端口号是否打开
  20. XILINX XC7A200T-1FBG676C FPGA - 现场可编程门阵列

热门文章

  1. xampp mysql使用教程_nodejs使用xampp中的mysql教程
  2. 【JS基础】JavaScript语言简介及简单例子
  3. Echarts2竖直datazoom滑动后显示数据不全的解决方法
  4. 足球机器人第一次作业:编写程序解析球员所看到和听到的信息。
  5. ES6阮一峰读书笔记第二章变量的解构赋值
  6. 【一起学加密4】一次性密码本
  7. 微信小程序实现图片上传功能
  8. 把PDF/AZW/EPUB转成图片
  9. yum源配置方法(阿里云源)
  10. 电子电路基础 (4)——电阻的认识