java分布式商城項目環(huán)境搭建6-CentOS7.6搭建Nginx & FastDFS 整體架構(gòu)

一草雕、 Nginx 介紹

1.1 Nginx 簡介

Nginx 是一款自由的、 開源的崇众、 高性能的 HTTP 服務(wù)器和反向代理服務(wù)器; 同時也是一個 IMAP航厚、 POP3顷歌、 SMTP 代理服務(wù)器; Nginx 可以作為一個 HTTP 服務(wù)器進(jìn)行網(wǎng)站的發(fā)布處理阶淘,另外 Nginx 可以作為反向代理進(jìn)行負(fù)載均衡的實現(xiàn)衙吩。
Nginx 同 Apache 一樣都是一種 WEB 服務(wù)器。 基于 REST 架構(gòu)風(fēng)格溪窒, 以統(tǒng)一資源描述符(Uniform Resources Identifier)URI 或者統(tǒng)一資源定位符(Uniform Resources Locator)URL 作為溝通依據(jù)坤塞, 通過 HTTP 協(xié)議提供各種網(wǎng)絡(luò)服務(wù)。
然而澈蚌, 這些服務(wù)器在設(shè)計之初受到當(dāng)時環(huán)境的局限摹芙, 例如當(dāng)時的用戶規(guī)模, 網(wǎng)絡(luò)帶寬宛瞄,產(chǎn)品特點(diǎn)等局限并且各自的定位和發(fā)展都不盡相同浮禾。 這也使得各個 WEB 服務(wù)器有著各自鮮明的特點(diǎn)。
Apache 的發(fā)展時期很長份汗, 而且是毫無爭議的世界第一大服務(wù)器盈电。 它有著很多優(yōu)點(diǎn): 穩(wěn)定、 開源杯活、 跨平臺等等匆帚。 它出現(xiàn)的時間太長了, 它興起的年代旁钧, 互聯(lián)網(wǎng)產(chǎn)業(yè)遠(yuǎn)遠(yuǎn)比不上現(xiàn)在吸重。
所以它被設(shè)計為一個重量級的互拾。 它不支持高并發(fā)的服務(wù)器。 在 Apache 上運(yùn)行數(shù)以萬計的并發(fā)訪問嚎幸, 會導(dǎo)致服務(wù)器消耗大量內(nèi)存颜矿。 操作系統(tǒng)對其進(jìn)行進(jìn)程或線程間的切換也消耗了大量的 CPU 資源, 導(dǎo)致 HTTP 請求的平均響應(yīng)速度降低嫉晶。
這些都決定了 Apache 不可能成為高性能 WEB 服務(wù)器骑疆, 輕量級高并發(fā)服務(wù)器 Nginx 就應(yīng)運(yùn)而生了。
俄羅斯的工程師 Igor Sysoev替废,他在為 Rambler Media 工作期間封断,使用 C 語言開發(fā)了 Nginx。Nginx 作為 WEB 服務(wù)器一直為 Rambler Media 提供出色而又穩(wěn)定的服務(wù)舶担。

二 Nginx 安裝配置

2.1 安裝 Nginx 依賴環(huán)境

1坡疼、 gcc 安裝

# yum install gcc-c++

2、 PCRE pcre-devel 安裝

# yum install -y pcre pcre-devel

3衣陶、 zlib 安裝

# yum install -y zlib zlib-devel

4柄瑰、 OpenSSL 安裝

# yum install -y openssl openssl-devel
2.2 安裝 Nginx

1、 下載 nginx

# wget -c https://nginx.org/download/nginx-1.12.1.tar.gz

2剪况、 解壓

# tar -zxvf nginx-1.12.1.tar.gz
# cd nginx-1.12.1
解壓后的nginx

3教沾、 使用默認(rèn)配置

# ./configure

4、 編譯译断、 安裝

# make
# make install

5授翻、 啟動 nginx

# cd /usr/local/nginx/sbin/
# ./nginx

其它命令

# ./nginx -s stop
# ./nginx -s quit
# ./nginx -s reload

#2.3 配置 Nginx 訪問 FastDFS 文件

1、 訪問文件(修改 nginx.conf)

# vim /usr/local/nginx/conf/nginx.conf

添加如下行孙咪, 將 /group1/M00 映射到 /homse/fastdfs/file/data

location /group1/M00 {
alias /home/fastdfs/file/data;
}

修改配置

2堪唐、 測試訪問文件
http://47.100.224.4/group1/M00/00/00/rBOr_1zqWcSASGLfAALpMV3ZLVg841.jpg
能夠下載文件, 則說明 nginx 安裝配置成功了翎蹈! 淮菠! !
訪問圖片

三 Nginx 配置 FastDFS 模塊

3.1 fastdfs-nginx-module 模塊說明

FastDFS 通過 Tracker 服務(wù)器荤堪, 將文件放在 Storage 服務(wù)器存儲合陵, 但是同組存儲服務(wù)器之間需要進(jìn)行文件復(fù)制, 有同步延遲的問題澄阳。
假設(shè) Tracker 服務(wù)器將文件上傳到了 192.168.78.128拥知, 上傳成功后文件 ID 已經(jīng)返回給客戶端。 此時 FastDFS 存儲集群機(jī)制會將這個文件同步到同組存儲 192.168.78.129碎赢, 在文件還沒有復(fù)制完成的情況下低剔, 客戶端如果用這個文件 ID 在 192.168.78.129 上取文件,就會出現(xiàn)文件無法訪問的錯誤。 而 fastdfs-nginx-module 可以重定向文件鏈接到源服務(wù)器取文件揩抡,避免客戶端由于復(fù)制延遲導(dǎo)致的文件無法訪問錯誤户侥。

3.2 fastdfs-nginx-module 安裝配置

1、 下載 fastdfs-nginx-module

最新版的 master 與當(dāng)前 nginx 有些版本問題峦嗤, 所以這里選擇下載蕊唐。

# wget https://github.com/happyfish100/fastdfs-nginx-module/archive/5e5f3566bbfa57418b5506aaefbe107a42c9fcb1.zip

2、 解壓烁设, 重命名

解壓

# unzip 5e5f3566bbfa57418b5506aaefbe107a42c9fcb1.zip

重命名

# mv fastdfs-nginx-module-5e5f3566bbfa57418b5506aaefbe107a42c9fcb1 fastdfs-nginx-module-master

3替梨、 配置 Nginx, 在 nginx 中添加模塊

先停掉 nginx 服務(wù)

# /usr/local/nginx/sbin/nginx -s stop

進(jìn)入解壓包目錄

# cd /Downloads/nginx-1.12.1/

添加模塊

# ./configure --add-module=../fastdfs-nginx-module-master/src

重新編譯装黑、 安裝

# make
# make install

4副瀑、 查看 Nginx 的模塊

# /usr/local/nginx/sbin/nginx -V
添加模塊

5、 復(fù)制 fastdfs-nginx-module 源碼中的配置文件到/etc/fdfs 目錄恋谭, 并修改

# cd /Downloads/fastdfs-nginx-module-master/src
# cp mod_fastdfs.conf /etc/fdfs/

修改如下配置糠睡, 其它默認(rèn)

# 連接超時時間
connect_timeout=10
# Tracker Server
tracker_server=192.168.78.128:22122
# StorageServer 默認(rèn)端口
storage_server_port=23000
# 如果文件 ID 的 uri 中包含/group**, 則要設(shè)置為 true
url_have_group_name = true
# Storage 配置的 store_path0 路徑疚颊, 必須和 storage.conf 中的一致
store_path0=/home/fastdfs/file

6狈孔、 復(fù)制 FastDFS 的部分配置文件到/etc/fdfs 目錄

# cd /Downloads/fastdfs-5.05/conf/
# cp anti-steal.jpg http.conf mime.types /etc/fdfs/

7、 配置 nginx材义, 修改 nginx.conf

# vim /usr/local/nginx/conf/nginx.conf

修改配置均抽, 其它的默認(rèn)
在 80 端口下添加 fastdfs-nginx 模塊

location ~/group([0-9])/M00 {
ngx_fastdfs_module;
}
修改配置

注意:
listen 80 端口值是要與 /etc/fdfs/storage.conf 中的 http.server_port=80 (前面改成 80 了)
相對應(yīng)。 如果改成其它端口其掂, 則需要統(tǒng)一油挥, 同時在防火墻中打開該端口。
location 的配置款熬, 如果有多個 group 則配置 location ~/group([0-9])/M00 深寥, 沒有則不用配group。
8贤牛、 在/home/fastdfs/file 文件存儲目錄下創(chuàng)建軟連接翩迈, 將其鏈接到實際存放數(shù)據(jù)的目錄

# ln -s /home/fastdfs/file/data/ /home/fastdfs/file/data/M00

9、 啟動 nginx

# /usr/local/nginx/sbin/nginx

打印處如下就算配置成功

啟動成功

10盔夜、 測試
能下載文件就算安裝成功负饲。 注意和第三點(diǎn)中直接使用 nginx 路由訪問不同的是, 這里配置 fastdfs-nginx-module 模塊喂链, 可以重定向文件鏈接到源服務(wù)器取文件返十。
http://47.100.224.4/group1/M00/00/00/rBOr_1zqWcSASGLfAALpMV3ZLVg841.jpg
到此, FastDFS&Nginx 分布式文件系統(tǒng)搭建完成椭微! 慶祝一下……

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末洞坑,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子蝇率,更是在濱河造成了極大的恐慌迟杂,老刑警劉巖刽沾,帶你破解...
    沈念sama閱讀 219,110評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異排拷,居然都是意外死亡侧漓,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,443評論 3 395
  • 文/潘曉璐 我一進(jìn)店門监氢,熙熙樓的掌柜王于貴愁眉苦臉地迎上來布蔗,“玉大人,你說我怎么就攤上這事浪腐∽葑幔” “怎么了?”我有些...
    開封第一講書人閱讀 165,474評論 0 356
  • 文/不壞的土叔 我叫張陵议街,是天一觀的道長泽谨。 經(jīng)常有香客問我,道長特漩,這世上最難降的妖魔是什么隔盛? 我笑而不...
    開封第一講書人閱讀 58,881評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮拾稳,結(jié)果婚禮上吮炕,老公的妹妹穿的比我還像新娘。我一直安慰自己访得,他們只是感情好龙亲,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,902評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著悍抑,像睡著了一般鳄炉。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上搜骡,一...
    開封第一講書人閱讀 51,698評論 1 305
  • 那天拂盯,我揣著相機(jī)與錄音,去河邊找鬼记靡。 笑死谈竿,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的摸吠。 我是一名探鬼主播空凸,決...
    沈念sama閱讀 40,418評論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼寸痢!你這毒婦竟也來了呀洲?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,332評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎道逗,沒想到半個月后兵罢,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,796評論 1 316
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡滓窍,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,968評論 3 337
  • 正文 我和宋清朗相戀三年卖词,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片贰您。...
    茶點(diǎn)故事閱讀 40,110評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖拢操,靈堂內(nèi)的尸體忽然破棺而出锦亦,到底是詐尸還是另有隱情,我是刑警寧澤令境,帶...
    沈念sama閱讀 35,792評論 5 346
  • 正文 年R本政府宣布杠园,位于F島的核電站,受9級特大地震影響舔庶,放射性物質(zhì)發(fā)生泄漏抛蚁。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,455評論 3 331
  • 文/蒙蒙 一惕橙、第九天 我趴在偏房一處隱蔽的房頂上張望瞧甩。 院中可真熱鬧,春花似錦弥鹦、人聲如沸肚逸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,003評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽朦促。三九已至骄呼,卻和暖如春惜傲,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背翘贮。 一陣腳步聲響...
    開封第一講書人閱讀 33,130評論 1 272
  • 我被黑心中介騙來泰國打工幻赚, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留禀忆,地道東北人。 一個月前我還...
    沈念sama閱讀 48,348評論 3 373
  • 正文 我出身青樓落恼,卻偏偏與公主長得像油湖,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子领跛,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,047評論 2 355