1. 程式人生 > >簡單的 FastDFS + Nginx 應用實例

簡單的 FastDFS + Nginx 應用實例

ear img 技術 ati 火墻 ews qpi article 使用

版權聲明:本文為GitChat作者的原創文章,未經 GitChat 同意不得轉載。 https://blog.csdn.net/GitChat/article/details/79479148

技術分享圖片

本文來自作者?only you??GitChat?上分享 「FastDFS + Nginx(單點部署)應用實例」

編輯 | 哈比

現在流行框架設計簡述

在互聯網大行其道的今天。各種分布式系統已經司空見慣。

搜索引擎、電商站點、微博、微信、O2O 平臺,凡是涉及到大規模用戶、高並發訪問的,無一不是分布式。

關於分布式系統,並沒有一個標準答案,說某某架構一定是最好的。

不同的業務形態所面對的挑戰不一樣,使用的架構設計也不一樣,通常都須要詳細業務詳細分析。

水平擴展和垂直拆分是分布式架構的兩種思路,但並非一個二選一的問題,很多其它的是兼並合用。以下介紹一個實際的場景。這也是很多互聯網的公司架構思路。

文件server的誕生和應用背景

現現在非常多的系統中,須要存儲過多的圖片、視頻等資料,文件存儲、文件同步、文件訪問(文件上傳、文件下載)等這些問題就出來了。

怎麽攻克了大容量存儲和負載均衡的問題?對以文件為載體的在線服務,如相冊站點、視頻站點等,文件server就起到了支撐的作用。

FastDFS 文件server的誕生背景和應用意義

FastDFS 是一個開源的輕量級分布式文件系統。

在一個分享的磁盤文件系統中,全部節點對數據存儲區塊都有同樣的訪問權,在這種系統中。訪問權限就必須由客戶端程序來控制。

分布式文件系統可能包括的功能有透通的數據復制與容錯。

分布式文件系統是被設計用在局域網。而分布式數據存儲,則是泛指為應用分布式運算技術的文件和數據庫等提供數據存儲服務的系統。

接下來。我們就搭建 FastDFS 文件server,體驗它的強大之處。

FastDFS 文件server搭建

搭建好開發環境介紹

本人測試環境為 Centos7 系統,一臺 192.168.229.128 作為 tracker,一臺 192.168.229.129 作為 storage。

安裝步驟

安裝依賴環境

安裝命令例如以下。

yum install make cmake gcc gcc-c++

安裝公共安裝包 libfastcommon

網上下載該包放到安裝文件夾下,我的安裝文件夾是 /usr/local/software,大家依據自己的習慣自定義。

解壓該安裝包到 /usr/local/fast 文件夾下。

解壓命令例如以下。

unzip ?libfastcommon-mastar.zip –d ?/usr/local/fast

進入解壓文件夾下,例如以下圖所看到的。

技術分享圖片

進行編譯和安裝

編譯命令例如以下。

./make.sh

安裝命令例如以下。

./make.sh install

運行過程。例如以下圖所看到的。

技術分享圖片

進行軟件創建

FastDFS 主程序設置的文件夾為 /usr/local/lib/,所以我們須要創建 /usr/lib64/ 下的一些核心運行程序的軟連接文件。

創建我們自己的 lib 文件夾,命令例如以下。

mkdir /usr/local/lib/

創建以下的軟連接。命令分別為:

ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so

ln -s /usr/lib64/libfastcommon.so /usr/lib/libfastcommon.so

ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so

ln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so

運行界面例如以下圖所看到的。

技術分享圖片

安裝 FastDFS 主程序

首先須要自己到網上下載 FastDFS 安裝包。

在這裏,我用的是 5.05 版本號的。

把我們從網上下載下來的 FastDFS_v5.05.tar.gz 進行解壓到 /usr/local/fast/ 下。使用到的命令例如以下。

cd /usr/local/software tar -zxvf FastDFS_v5.05.tar.gz -C /usr/local/fast/

進入解壓文件夾進行編譯安裝

進入解壓文件夾,命令例如以下。

cd /usr/local/fast/FastDFS/

編譯命令例如以下。

./make.sh

安裝命令例如以下

./make.sh install

運行界面例如以下圖所看到的。

技術分享圖片

中間沒有不論什麽的 error 字樣,說明成功安裝。

相關腳本說明

安裝完畢後。服務腳本在以下文件夾中。

/etc/init.d/fdfs_storaged

/etc/init.d/fdfs_trackerd

配置文件在以下文件夾中。

/etc/fdfs/client.conf.sample

/etc/fdfs/storage.conf.sample

/etc/fdfs/tracker.conf.sample

以下這張圖顯示了服務腳本的文件夾和文件列表。

技術分享圖片

下圖顯示了在配置文件文件夾下備份的默認配置文件。

技術分享圖片

由於 FastDFS 服務腳本設置的 bin 文件夾為 /usr/local/bin/,可是實際我們安裝在了 /usr/bin/ 以下。所以我們須要改動 FastDFS 配置文件裏的路徑。也就是須要改動兩個配置文件。命令例如以下。

vim /etc/init.d/fdfs_storaged %s+/usr/local/bin+/usr/bin // 進行全局替換命令

vim /etc/init.d/fdfs_trackerd %s+/usr/local/bin+/usr/bin// 進行全局替換命令

配置跟蹤器

首先我們進入 /etc/fdfs/ 文件夾下。把 tracker.conf.sample 文件 Cope 一份。

去改動 tracker.conf 文件。改文件作為 tracker 啟動配置文件。

命令例如以下。

vim /etc/fdfs/tracker.conf

改動 tracker 的 basepath 文件夾之後。別忘了創建改文件夾。命令例如以下。

mkdir -p /fastdfs/tracker

到這裏,我們的跟蹤器就能夠啟動了。見下圖。

當然在這個之前要關閉防火墻操作。

技術分享圖片

有二個確定的字樣,說明了啟動成功。

掃描下方二維碼

閱讀完整原文

並與作者交流

技術分享圖片

簡單的 FastDFS + Nginx 應用實例