1. 程式人生 > 其它 >FastDFS分散式的檔案系統從小白入門到企業實踐打怪之路系列筆記 【運維實踐】

FastDFS分散式的檔案系統從小白入門到企業實踐打怪之路系列筆記 【運維實踐】

描述: FastDFS 是阿里的餘慶大佬用 C 語言編寫的一款開源的分散式檔案系統(個人專案),它對檔案進行管理。功能包括:檔案儲存、檔案同步、檔案訪問(檔案上傳、檔案下載)等,適合中小檔案(4KB < file_size <500MB)儲存,解決了大容量檔案儲存和負載均衡的問題。充分考慮了冗餘備份、負載均衡、線性擴容等機制,並注重高可用、高效能等指標。 應用場景: 1.特別適合以檔案為載體的線上服務,如相簿網站、視訊網站等等。 2.適合用來儲存使用者圖片、視訊、文件等檔案(小檔案 建議範圍:4KB < file_size < 500MB)。 Tips: 支援Linux、FreeBSD等UNIX系統類 google FS,但不是通用的檔案系統; Tips: FastDFS不適用於分散式計算儲存的場景、以及資料庫檔案、VM虛擬機器檔案的儲存;

FastDFS分散式的檔案系統從小白入門到企業實踐打怪之路系列筆記 【運維實踐】

0.前言
Q: 傳統的檔案系統面臨的問題與挑戰?
描述: 在傳統WEB應用中,前端、後端、以及其它API服務部署在同一臺伺服器,所有檔案都作為靜態資源訪問,隨著業務量的不斷增長,久而久之,圖片和檔案等資源佔用的空間變得越來越大。

隨之帶來了各種效能、管理與安全風險等問題,如下所示:

若檔案直接置於應用伺服器中,難以管理;

昂貴的磁碟空間、高效能伺服器大大增加了運維成本;

易發生單點故障;

傳統FTP上傳檔案,存在諸多安全隱患(使用者名稱和口令的明文傳輸等);

無法保證檔案的機密性,某些敏感檔案如身份證照片等以明文儲存,檔案的授權訪問不易控制;

安全沒有保障,檔案上傳、下載、刪除、檢視依賴於各個業務系統的實現,一個上傳功能可能出現“修不完的漏洞”;

Q: 什麼是分散式檔案系統?
描述: 分散式檔案系統(Distributed File System, DFS)是一種允許檔案通過網路在多臺主機上分享的檔案系統,可讓多機器上的多使用者分享檔案和儲存空間。客戶端並非直接訪問底層的資料儲存區塊,而是通過網路以特定的通訊協議與伺服器通訊,借通訊協議來限制客戶端對於檔案系統的訪問。分散式檔案儲存利用多臺儲存伺服器分擔儲存壓力,利用跟蹤伺服器定位儲存資訊,不但提高了系統可靠性、可用性以及讀寫效率,而且方便水平擴充套件。分散式檔案儲存可採用多副本備份機制,分散式儲存對資料進行了分片,分片後的資料按照一定規則儲存在叢集節點上。即使單個叢集節點機器發生故障也能保證資料不會丟失,最小化對業務的影響。

Tips: 既然傳統的檔案儲存方式存在這麼多弊端,那麼新的分散式檔案系統需要滿足哪些需求呢? 作者:

我在B站學習運維之FastDFS分散式的檔案儲存系統快速入門介紹(1):

https://www.bilibili.com/read/cv13945905

0x00 基礎介紹

    0.前言

    1.簡介

    2.特性

    3.架構

        Tracker Server

        Storage Server

        Client

    4.儲存策略

    5.過程剖析

        檔案上傳 - Upload

        檔案下載 - Download

        檔案訪問 - HTTP

        檔案同步 - Sync

    6.功能比對

    7.參考來源 

我在B站學習運維之FastDFS分散式的檔案儲存系統快速單機部署與主從部署(2):

https://www.bilibili.com/read/cv13946146

本章目錄:

0x01 FastDFS 安裝使用

    1.Linux 安裝

        1.1) CentOS 單機部署 FastDFS

        1.2) Ubuntu 主從部署 FastDFS

    2.Docker 安裝

        官方倉庫fastDFS相關映象

        自定義FastDFS基礎映象

我在B站學習運維之FastDFS分散式的檔案儲存系統進階使用配置(3):

https://www.bilibili.com/read/cv13946270

本章目錄:

    0x00 進階使用

        1.FastDFS 重複檔案處理

        2.FastDFS 原始檔名恢復

        3.FastDFS 資源防盜鏈功能

        4.FastDFS 從檔案的使用技巧

我在B站學習運維之FastDFS分散式的檔案儲存系統容災恢復及入坑出坑(4):

https://www.bilibili.com/read/cv13946433

本章目錄:


    0x01 容災恢復

        1.主從同步異常恢復測試

        2.叢集資料整體遷移(思路)

    0x02 測試優化

        3.1 測試工具

        3.2 優化引數

    0x0n 入坑&出坑

我在B站學習運維之FastDFS分散式的檔案儲存系統進階使用使用實踐之API(5):

https://www.bilibili.com/read/cv13946557

本章目錄:

    0x00 FastDFS API 使用實踐

        Java

        Python

    0x01 FastDFS 基礎命令與配置

        1.FastDFS 客戶端命令淺析

        2.FastDFS 服務端配置淺析

至此本系列完畢!

歡迎各位志同道合的朋友一起學習交流,如文章有誤請在下方留下您寶貴的經驗知識,個人郵箱地址【master#weiyigeek.top】

更多文章來源: https://weiyigeek.top 【WeiyiGeek Blog - 為了能到遠方,腳下的每一步都不能少】

如果你覺得這個專欄還不錯的,請給這篇專欄點個贊、投個幣、收個藏、關個注,轉個發,這將對我有很大幫助。