<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-35  評論-33  文章-0  trackbacks-0
     最近在調(diào)研文件的分布式存儲及高可用,在GITHUB上面,發(fā)現(xiàn)了這個SeaweedFS項目不錯。

    SeaweedFS是基于go語言開發(fā)的高可用文件存儲系統(tǒng),兩大特性

    1 成存儲上億的文件(最終受制于你的硬盤大小)

    2 速度剛剛的

    Seaweedfs的設(shè)計原理是基于 Facebook 的一篇圖片存儲系統(tǒng)的論文Facebook-Haystack

    雖然我還沒有看,不過我覺得??隙ㄊ荖BHH的。今天就只說一下環(huán)境相關(guān)的。


    安裝:

    第一步,GO的運(yùn)行環(huán)境

    wget https://golang.org/doc/install?download=go1.6.1.linux-amd64.tar.gz

    sudo tar -C /usr/local -xzf go1.6.1.linux-amd64.tar.gz

    第二步,配置環(huán)境變量 /etc/profile

    export PATH=$PATH:/usr/local/go/bin

    export GOPATH=/usr/webserver/go/

    export PATH=$PATH:$GOPATH/bin

    第三步 安裝git

    sudo apt-get install git

    第四步 安裝mercurial

    apt-get install mercurial

    第五步,編譯安裝

    go get github.com/chrislusf/seaweedfs/go/weed  ((此處需要vpn))

    生活在天朝,沒有VPN,可以直接下載它的運(yùn)行包,直接解壓,就可以運(yùn)行了(我就是這樣做的,如果這樣,etc/profile里面的gopath這一項就不需要了)

    export PATH=$PATH:/usr/local/go/bin

    export PATH=$PATH:$GOPATH/bin

    sudo wgethttps://bintray.com/artifact/download/chrislusf/seaweedfs/weed_0.70beta_linux_amd64.tar.gztar zxvf weed_0.70beta_linux_amd64.tar.gz


    服務(wù)啟動:

    1 進(jìn)入weed的解壓目錄,我的是這樣的。

    root@ubuntu:~/webserver/weed_0.70beta_linux_amd64# ./weed master


    注意看,它是啟動了一個服務(wù),端口是9333,這是它的默認(rèn)端口。

    2 啟動文件存儲服務(wù)

    root@ubuntu:~/webserver/weed_0.70beta_linux_amd64# ./weed volume -dir="/root/webserver/weed_0.70beta_linux_amd64/data" -max=5 -mserver="localhost:9333" -port=9080 &

    3 提交一個存儲請求,這個時候weed先要分配一個全局的文件ID

    curl -X POST http://localhost:9333/dir/assign

    4 存儲一張圖片

    curl -X PUT -F file=@/root/webserver/weed_0.70beta_linux_amd64/error.jpg http://127.0.0.1:9080/5,019d90e98a

    5 訪問測試

    因為我的服務(wù)器地址是192.168.1.47,http://192.168.1.47:9080/5,019d90e98a.jpg


    甚至,你還可以加上尺寸,動態(tài)獲取相應(yīng)圖片的大小


    確實不錯。看了以上的截圖,你會發(fā)現(xiàn)它的文件ID,至始至終都存在。這就是文件的唯一標(biāo)識。其實這個ID是每3部分存在的。

    其中"fid":"5,019d90e98a"就是 Fid,F(xiàn)id 由三個部分組成 【VolumeId, NeedleId, Cookie】 組成。

    VolumeId: 1          32bit      存儲的物理卷的Id

    NeedleId: 01        64bit      全局唯一NeedleId,每個存儲的文件都不一樣(除了互為備份的)。

    Cookie: 9d90e98a    32bit      Cookie值,為了安全起見,防止惡意攻擊。

    以上這些,只能說是用過curl的方式,作為JAVA開發(fā)人員。還是需要封裝一個這些API,方便訪問。

    weed java client這是一個老外寫的,雖然代碼老了點(diǎn),不過還是很不錯。準(zhǔn)備看看,拿過來用一下。

    網(wǎng)上看了若干的文章

    http://blogread.cn/it/article/7721

    http://www.sqshi.com/a/270607.html(Bilibili的毛劍是參考了weed而寫的BFS)

    不過,我覺得,要真正理解這個weed,還是看它的GITHUB官網(wǎng)吧。

    SeaweekFS:seaweedfs



    我的微信公眾號,歡迎溝通學(xué)習(xí)。
    posted on 2016-04-15 18:55 alexcai 閱讀(2970) 評論(4)  編輯  收藏

    評論:
    # re: SeaweedFS:簡單,高可用的分布式文件存儲[未登錄] 2016-04-20 23:51 | linda
    分布式存儲 SeaweekFS項目很贊  回復(fù)  更多評論
      
    # re: SeaweedFS:簡單,高可用的分布式文件存儲 2016-04-21 14:20 | aunox
    感覺用的公司不是很多,可能是成名較晚。  回復(fù)  更多評論
      
    # re: SeaweedFS:簡單,高可用的分布式文件存儲 2016-05-12 16:54 | www.niuchui.com
    介紹得不錯,贊一個!  回復(fù)  更多評論
      
    # re: SeaweedFS:簡單,高可用的分布式文件存儲 2016-05-13 10:53 | zuxiong
    @www.niuchui.com
    多謝多謝。  回復(fù)  更多評論
      

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 男女猛烈无遮掩视频免费软件 | 国产无遮挡色视频免费观看性色| 97se亚洲国产综合自在线| 在线免费不卡视频| 一级做a爰片久久免费| 亚洲美免无码中文字幕在线| 日本免费电影一区| 国产一级淫片a免费播放口| 亚洲人成网站在线播放vr| 91香蕉成人免费网站| 香港特级三A毛片免费观看| 亚洲男人都懂得羞羞网站| 国产嫩草影院精品免费网址| 国产午夜精品久久久久免费视| 亚洲综合色区中文字幕| 亚洲色成人中文字幕网站 | 免费一级一片一毛片| 99视频精品全部免费观看| 国产亚洲美女精品久久| 亚洲的天堂av无码| 亚洲乳大丰满中文字幕| 免费毛片网站在线观看| 亚洲精品乱码久久久久久蜜桃图片| 亚洲精品乱码久久久久久蜜桃不卡| 一二三四免费观看在线视频中文版| 中文在线观看免费网站| 亚洲精品国产综合久久久久紧| 亚洲精品人成在线观看| 亚洲成av人片天堂网老年人| www.999精品视频观看免费| 毛片免费在线观看| 一级做a爰性色毛片免费| 亚洲日本VA午夜在线电影| 亚洲视频一区网站| 久久被窝电影亚洲爽爽爽| 亚洲国产成人久久一区WWW| 免费观看毛片视频| 成人女人A级毛片免费软件| 99xxoo视频在线永久免费观看| 中文字幕免费播放| 五月婷婷免费视频|