Windows+Nginx+IIS作圖片分佈式存儲詳細步驟

   最近幾天,一直在學習nginx在windows平臺下的使用,爲了尋找幾種大量圖片分佈式存儲並且有相對簡單的存儲方案 nginx是一種,還找到一種MongoDB GridFS 這兩種方案我仍是比較中意的,通過今天的奮鬥,終於將nginx作圖片分佈式存儲這個方案的搭建環境創建起來了,GridFS在後續的學習中我也會記錄下搭建過程,敬請期待吧。html

    廢話少說,下面就來講一下Windows+Nginx+IIS 如何創建分佈式存儲結構。nginx

1.  結構總覽windows

邏輯結構:服務器

 

圖1分佈式

如圖,這是理想的架設,我此次模擬的結構邏輯上是這樣本身的,實際上我本身沒這麼多的計算機,我只能利用虛擬機虛擬出一臺windows 2003系統學習

下圖是我本身實際架設的結構:測試

 

           圖2網站

 

我來詳細說明一下:url

   須要的資源:spa

A.      一個測試網站,很簡單的,有一個上傳圖片,以及瀏覽圖片就行了,一個頁面足以

B.      Nginx代理服務器,我這裏將Nginx代理服務器也用來存儲圖片,因此也算是圖片服務器1號

C.      圖片服務器,用來分擔1號的圖片

D.      第二張圖,是我實際架設的結構,機器不夠,因此我本身的筆記本上會安裝以下配置:

a)         測試網站  www.demo.com

b)         Nginx 服務器代理

c)         圖片服務器1號

虛擬機用來作圖片服務器2號。

實現原理

1.       用戶有2中上傳圖片方式:

a)         第一種Http://img.nginxtest.com/s1/upload.aspx

b)         第二種Http://img.nginxtest.com/s2/upload.aspx

         請求發送至 Nginx服務器後根據 url中的s1,s2會轉發到不一樣的2個圖片服務器

         含有/s1/ 的請求發送到1號圖片服務器,含有/s2/ 的發送到2號服務器

2.       未來圖片保存的結構以下

a)         1號圖片服務會將圖片保存在 /s1/… 目錄下

b)         同理2號服務器會保存在  /s2/… 目錄下

c)         我這裏圖片上傳後圖片保存的URL結構:

                                       i.              1號服務器上: http://img.nginxtest.com/s1/photo/1234/123456/product/_2013113144712237_s.jpg

                                     ii.              2號服務器上:http://img.nginxtest.com/s2/photo/1234/123456/product/_2013113145230921_s.jpg

d)         請求示意圖

 

 

 

2.  圖片服務器配置

一步一步來講下配置過程,先來配置2個圖片服務器,用來接收用戶上傳的圖片並保存在本地. 這裏規定一下吧,如圖2  Nginx代理服務器也便是我本身的筆記本命名爲A號機器(IP:192.168.21.1),虛擬機命名爲B號機器(IP:192.168.21.128),用於下面的簡稱

a)         A號機器配置圖片服務器 : 域名爲:img.nginxtest.com  端口 801

b)         A號機器配置圖片服務器安裝nginx  端口使用 80

c)         A號機器配置測試網站 域名www.demo.com 端口8012

d)         虛擬機配置圖片服務器 域名 img.s2.com 端口 80

e)         修改 hosts 文件

 

f)          配置 nginx 找到nginx.conf 文件   

 

上圖的紅色框框 實現了nginx 處理url分流, 根據URL中的/S1/ ,/S2/ 來分發請求

Ok~,以上是主要的配置流程,還有一些沒法用語言說的,本身語言功底有限啊(暴汗~~)

 

提供一些參考資料

1.    短小實用的分佈式圖片存儲方案  很是感謝這個博主的思路

2.    Nginx配置文件說明   這個要看一遍至少,不然新手真心不會配置

 

http://blog.sina.com.cn/s/blog_75a555e40101fie9.html

相關文章
相關標籤/搜索