天天看點

FastDFS + Nginx

普通的存儲方式,圖檔存儲過于分散

圖檔存儲過于分散

圖檔多的伺服器壓力比較大,可能影響其他功能

存儲到項目路徑中,重新開機會丢失。存儲到外部檔案中,IO操作性能低

FastDFS + Nginx
FastDFS + Nginx
FastDFS + Nginx
FastDFS + Nginx
FastDFS + Nginx
FastDFS + Nginx
FastDFS + Nginx
FastDFS + Nginx
FastDFS + Nginx
FastDFS + Nginx

安裝C依賴

安裝C的一個庫,我這邊直接GitHub下載下傳

編譯并安裝

預設的固定安裝位置

FastDFS + Nginx

/usr/lib64

/usr/lib

/usr/include/fastcommon

建立軟連結

上傳并解壓FastDFS主程式

FastDFS + Nginx

/usr/bin 可執行檔案所在的位置

/etc/fdfs 配置檔案所在的位置

/usr/bin 主程式代碼所在位置

/usr/include/fastdfs 包含一些插件所在的位置

複制配置檔案

建立資料目錄

建立防止tracker資料的目錄

修改配置檔案,修改tracker.conf設定tracker内容存儲目錄

預設端口 22122 不需要修改

啟動服務

啟動成功後,配置檔案base_path指向的目錄出現FastDFS服務相關資料目錄(data目錄,logs目錄)

如果顯示 is running 表示正常運作

storage可以和tracker不在同一台伺服器中,示例中把storage和tracker安裝在同一台伺服器

進入到/etc/fdfs,把storage配置檔案複制一份

把base用于存儲基礎資料和日志,store用于存儲上傳資料

storage.conf配置檔案用于描述存儲服務的行為,需要進行下述修改

配置内容如下

base_path,基礎路徑

store_path0,

base_path和store_path可以使用同一目錄

tracker_server 跟蹤伺服器位置,就是跟蹤伺服器的IP和端口

啟動成功後,配置檔案base_path指向的目錄中出現FastDFS服務相關資料目錄(data目錄,logs目錄庫)

配置檔案中的store_path0指向的目錄同樣出現了FastDFS存儲相關資料目錄(data目錄)

其中$store_path0/data 目錄中預設建立若幹子孫目錄(兩層一共256*256),用于存儲具體檔案資料

Storage伺服器啟動比較慢,第一次啟動的時候,需要建立256*256個目錄

時序圖

FastDFS + Nginx

用戶端通路Tracker

Tracker傳回Storage的ip和端口

用戶端直接通路Storage,把檔案内容和中繼資料發送過去

Storage傳回檔案存儲id,包含了組名和檔案名

FastDFS + Nginx

添加依賴,官方位址:https://mvnrepository.com/artifact/cn.bestwu/fastdfs-client-java

fdfs_client.conf,修改成自己的tracker伺服器ip

在com.utils.FastDFSClient下粘貼配置工具類

FastDFS + Nginx
FastDFS + Nginx
FastDFS + Nginx
FastDFS + Nginx
FastDFS + Nginx
FastDFS + Nginx
FastDFS + Nginx

下載下傳fastdfs-nginx-module到/usr/local/tmp中

修改第四行路徑,參數用于配置安裝nginx中的FastDFS元件的時候,在什麼位置查找FastDFS核心代碼

複制 fastdfs-nginx-module/src/mod_fastdfs.conf 配置檔案到/etc/fdfs目錄中

使用者

在server_name下面修改

進入目錄,然後

<b>論讀書</b>

睜開眼,書在面前

閉上眼,書在心裡

繼續閱讀