簡單的 FastDFS+Nginx 應用實例
本文來自作者only you在GitChat上分享 「FastDFS + Nginx(單點部署)應用實例」
編輯 | 哈比
現在流行框架設計簡述
在互聯網大行其道的今天,各種分散式系統已經司空見慣。搜索引擎、電商網站、微博、微信、O2O 平台,凡是涉及到大規模用戶、高並發訪問的,無一不是分散式。
關於分散式系統,並沒有一個標準答案,說某某架構一定是最好的。不同的業務形態所面對的挑戰不一樣,使用的架構設計也不一樣,通常都需要具體業務具體分析。
水平擴展和垂直拆分是分散式架構的兩種思路,但並不是一個二選一的問題,更多的是兼并合用。下面介紹一個實際的場景。這也是許多互聯網的公司架構思路。
文件伺服器的誕生和應用背景
現如今很多的系統中,需要存儲過多的圖片、視頻等資料,文件存儲、文件同步、文件訪問(文件上傳、文件下載)等這些問題就出來了。
怎麼解決了大容量存儲和負載均衡的問題?對以文件為載體的在線服務,如相冊網站、視頻網站等,文件伺服器就起到了支撐的作用。
FastDFS 文件伺服器的誕生背景和應用意義
FastDFS 是一個開源的輕量級分散式文件系統。
在一個分享的磁碟文件系統中,所有節點對數據存儲區塊都有相同的訪問權,在這樣的系統中,訪問許可權就必須由客戶端程序來控制。
分散式文件系統可能包含的功能有透通的數據複製與容錯。
分散式文件系統是被設計用在區域網。而分散式數據存儲,則是泛指為應用分散式運算技術的文件和資料庫等提供數據存儲服務的系統。
接下來,我們就搭建 FastDFS 文件伺服器,體驗它的強大之處。
FastDFS 文件伺服器搭建
搭建環境介紹
本人測試環境為 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/softwaretar -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
到這裡,我們的跟蹤器就可以啟動了,見下圖。當然在這個之前要關閉防火牆操作。
有二個確定的字樣,說明了啟動成功。
![](https://pic.pimg.tw/zzuyanan/1488615166-1259157397.png)
![](https://pic.pimg.tw/zzuyanan/1482887990-2595557020.jpg)
※TypeScript 快速入門
※如何快速成長為圖形學工程師
TAG:GitChat技術雜談 |