FastDFS principle series articles

1. Overview

      There are very few FastDFS documents, and only some broad architecture documents and some answers to questions from netizens on the ChinaUnix forum can be found. This knowledge is definitely not enough to apply FastDFS to a production system.
      During this time, I studied the FastDFS source code, and did a lot of performance tests. I also took a lot of notes in the middle. Basically, I explored the structure and main operations of the program clearly. Therefore, I wrote some articles to summarize the previous work. It is also shared with colleagues who want to know more about FastDFS. Here is an introduction to each article.

1. Synchronization between machines The synchronization
      between storages may be the first thing everyone cares about. This article gives a detailed introduction. Finally, I also wrote the precautions, mainly in terms of performance.
"Binlog Synchronization of FastDFS" http://blog.csdn.net/hfty290/article/details/42041155 2. You       may not notice this part when

adding a new machine to synchronize , but it is actually very important.
In the actual production system, it is normal to break a machine, or increase the machine for reading pressure, etc. Adding a machine to a running system involves synchronizing and integrating existing files into the system, as detailed in the following article.
"Adding Machine Synchronization to FastDFS" http://blog.csdn.net/hfty290/article/details/42041953

3. It is a high probability event that a disk is damaged in a disk recovery
      online machine. If a new disk is replaced, the problem is coming , How to restore data. Don't worry, restart Storaged, he will detect and restore, although the recovery time may be very long (when the amount of data is large), this article explains this function.
"FastDFS Disk Recovery Process" http://blog.csdn.net/hfty290/article/details/42032817

4. Storaged program structure
      The main function points of Storaged have been described here, or you still want to know how the program is internally For information on organization, coordination between threads, etc., see this article.
"Storage Program Framework of FastDFS" http://blog.csdn.net/hfty290/article/details/42048001

5. Communication between Client and Tracker
      Now it's time to look at the Tracker from the client's point of view, because whether it is uploading or downloading , delete and other operations need to query the Tracker first. So how are these query trackers calculated and returned? Please see this article.
"FastDFS Client and Tracker Communication" http://blog.csdn.net/hfty290/article/details/42064429

6. Consolidated storage of
      massive small files leads to performance degradation, and everyone may have heard of it. The good news is that FastDFS circumvents this problem by merging small files into larger ones. How FastDFS implements this function, please see here for details.       "Analysis of FastDFS
Merged Storage Principle" http://blog.csdn.net/hfty290/article/details/42026215

7. Tracker-Leader election
You may be curious about how Tracker-Leader is elected, through this article you will see the leader election process.
"FastDFS Tracker-Leader Selection" http://blog.csdn.net/hfty290/article/details/42030339

8. Design flaws
      in merged storage The FastDFS merged storage function has to face a problem, which in some cases will lead to Incorrect or missing data. You may have found it when you read the article "Analysis of the Principles of FastDFS Consolidated Storage", now let's reproduce the appearance of this error completely, please see.
"FastDFS merged storage defects lead to data loss or errors" http://blog.csdn.net/hfty290/article/details/42030481

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=326456604&siteId=291194637