今天我們就按照如圖所示士修,添加一臺新的storage(163.64)到group1中智什。
其實過程很簡單持灰,與之前的新建storage過程一模一樣榨乎,這里就不在累述怎燥。
另外還有nginx的配置,這里也不多說了蜜暑,請參考我的《FastDFS--簡易配置(一)》铐姚。
現(xiàn)在查看一下訪問文件的效果
可以正常訪問滴。
接下來我們模擬一下其中一臺storage下線了肛捍,看看是否有影響訪問隐绵。
163.63已經(jīng)下線了,那么理論上來說63應(yīng)該不會得到同步篇梭。好吧氢橙,我們接下來上傳一個圖片試試酝枢,看看63是否真的不會得到同步
接下來我們訪問一下61(負載均衡)63(storage1)64(storage2)
都能訪問得到這個剛上傳的圖片恬偷?
那不應(yīng)該呀,63不是offline了嗎帘睦?怎么還會同步的呢袍患?
稍安勿躁。我們來看看剛上傳文件的信息吧竣付。
source ip是在64上诡延。
為啥訪問63也可以得到結(jié)果呢?秘密在于我們上傳的時候返回的這個ID信息古胆。這里就有這個文件保存的地址肆良。我們安裝的這個模塊fastdfs-nginx-module-master.zip筛璧,就會從這個source ip上去找到文件。
目前的邏輯圖如下:
胡哥我是怎么知道這個秘密的呢夭谤?在于觀察,請看下圖巫糙。
連續(xù)上傳同一個文件朗儒,發(fā)現(xiàn)有些規(guī)律可循。就猜測参淹,應(yīng)該與這個返回值有關(guān)醉锄。
那怎么去驗證我的猜想呢?那就請各位想辦法去驗證浙值。胡哥我就驗證出來了恳不。^_^
接下來我們繼續(xù)驗證一下同步。修改邏輯狀態(tài)如下:
接下來繼續(xù)訪問一下
證明开呐,63為啥能訪問得到妆够,是因為64是正常的,但是63因為一直是offline的狀態(tài)负蚊,所以63本機并沒有保存副本神妹。
現(xiàn)在我們將機器恢復(fù)正常狀態(tài),如下圖:
證明鸵荠,當(dāng)63和64正常的時候,同步就會進行伤极,即便文件的source ip是64蛹找,當(dāng)64出故障的時候,因為63上有副本哨坪,這樣一樣可以訪問得到庸疾。