FastDFS分布式文件系統(tǒng)

摘要: FastDFS簡介 ?FastDFS是一個(gè)輕量級的開源分布式文件系統(tǒng)

?FastDFS主要解決了大容量的文件存儲和高并發(fā)訪問的問題驰后,文件存取時(shí)實(shí)現(xiàn)了負(fù)載均衡

?FastDFS實(shí)現(xiàn)了軟件方式的RAID,可以使用廉價(jià)的IDE硬盤進(jìn)行存儲 ?支持存儲服務(wù)器在線擴(kuò)容

?支持相同內(nèi)容的文件只保存一份横堡,節(jié)約磁盤空間 ?FastDFS只能通過ClientAPI訪問陶夜,不支持POSIX訪問方式

?FastDFS特別適合大中型網(wǎng)站使用,用來存儲資源文件(如:圖片、文檔战惊、音頻、視頻等等)

FastDFS簡介

?FastDFS是一個(gè)輕量級的開源分布式文件系統(tǒng)

?FastDFS主要解決了大容量的文件存儲和高并發(fā)訪問的問題扎即,文件存取時(shí)實(shí)現(xiàn)了負(fù)載均衡

?FastDFS實(shí)現(xiàn)了軟件方式的RAID吞获,可以使用廉價(jià)的IDE硬盤進(jìn)行存儲

?支持存儲服務(wù)器在線擴(kuò)容

?支持相同內(nèi)容的文件只保存一份况凉,節(jié)約磁盤空間

?FastDFS只能通過ClientAPI訪問,不支持POSIX訪問方式

?FastDFS特別適合大中型網(wǎng)站使用各拷,用來存儲資源文件(如:圖片刁绒、文檔、音頻烤黍、視頻等等)

系統(tǒng)架構(gòu)-架構(gòu)圖

系統(tǒng)架構(gòu)-上傳文件流程圖

??1. client詢問tracker上傳到的storage知市,不需要附加參數(shù);

??2. tracker返回一臺可用的storage蚊荣;

??3. client直接和storage通訊完成文件上傳初狰。

系統(tǒng)架構(gòu)-下載文件流程圖

??1. client詢問tracker下載文件的storage,參數(shù)為文件標(biāo)識(組名和文件名)互例;

??2. tracker返回一臺可用的storage奢入;

??3. client直接和storage通訊完成文件下載。

相關(guān)術(shù)語

??Tracker Server:跟蹤服務(wù)器媳叨,主要做調(diào)度工作腥光,在訪問上起負(fù)載均衡的作用。記錄storage server的狀態(tài)糊秆,是連接Client和Storageserver的樞紐武福。

??Storage Server:存儲服務(wù)器,文件和meta data都保存到存儲服務(wù)器上

??group:組痘番,也可稱為卷捉片。同組內(nèi)服務(wù)器上的文件是完全相同的

??文件標(biāo)識:包括兩部分:組名和文件名(包含路徑)

??meta data:文件相關(guān)屬性,鍵值對(Key Value Pair)方式汞舱,如:width=1024,heigth=768

同步機(jī)制

?同一組內(nèi)的storageserver之間是對等的伍纫,文件上傳、刪除等操作可以在任意一臺storage server上進(jìn)行昂芜;

?文件同步只在同組內(nèi)的storage server之間進(jìn)行莹规,采用push方式,即源服務(wù)器同步給目標(biāo)服務(wù)器泌神;

?源頭數(shù)據(jù)才需要同步良漱,備份數(shù)據(jù)不需要再次同步,否則就構(gòu)成環(huán)路了欢际;

?上述第二條規(guī)則有個(gè)例外母市,就是新增加一臺storage server時(shí),由已有的一臺storageserver將已有的所有數(shù)據(jù)(包括源頭數(shù)據(jù)和備份數(shù)據(jù))同步給該新增服務(wù)器损趋。

通信協(xié)議

??協(xié)議包由兩部分組成:header和body

??header共10字節(jié)窒篱,格式如下:

–?8 bytes body length

–?1 byte command

–?1 byte status

??body數(shù)據(jù)包格式由取決于具體的命令,body可以為空

運(yùn)行時(shí)目錄結(jié)構(gòu)-tracker server

???${base_path}

|__data

|???? |__storage_groups.dat:存儲分組信息

|????|__storage_servers.dat:存儲服務(wù)器列表

|__logs

|__trackerd.log:trackerserver日志文件

運(yùn)行時(shí)目錄結(jié)構(gòu)-storage server

???${base_path}

|__data

|???? |__.data_init_flag:當(dāng)前storageserver初始化信息

|????|__storage_stat.dat:當(dāng)前storage server統(tǒng)計(jì)信息

|????|__sync:存放數(shù)據(jù)同步相關(guān)文件

|????|???? |__binlog.index:當(dāng)前的binlog文件索引號

|????|???? |__binlog.###:存放更新操作記錄(日志)

|????|???? |__${ip_addr}_${port}.mark:存放同步的完成情況

|????|

|???? |__一級目錄:256個(gè)存放數(shù)據(jù)文件的目錄,如:00, 1F

|?????????? |__二級目錄:256個(gè)存放數(shù)據(jù)文件的目錄

|__logs

|__storaged.log:storageserver日志文件

安裝和運(yùn)行

?#step 1. download FastDFS source package and unpack it,

?# if you use HTTP to download file, please downloadlibevent 1.4.x and install it

?tar xzf FastDFS_v1.x.tar.gz

?#for example:

?tar xzf FastDFS_v1.20.tar.gz

?

?#step 2. enter the FastDFS dir

?cd FastDFS

?

?#step 3. if HTTP supported, modify make.sh, uncommentthe line:

?# WITH_HTTPD=1, then execute:

?./make.sh

?

?#step 4. make install

?./make.sh install

?

?#step 5. edit/modify the config file of tracker andstorage

?

?#step 6. run server programs

?#start the tracker server:

?/usr/local/bin/fdfs_trackerd

?

?#start the storage server:

?/usr/local/bin/fdfs_storaged

FastDFS和集中存儲方式對比

? FastDFS中文:http://www.csource.org/

??FastDFS英文:http://code.google.com/p/fastdfs/

官網(wǎng)資料墙杯,分享給大家學(xué)習(xí)

愿意了解框架技術(shù)或者源碼的朋友直接加求求(企鵝):2042849237

更多詳細(xì)源碼參考來源:http://minglisoft.cn/technology

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市括荡,隨后出現(xiàn)的幾起案子高镐,更是在濱河造成了極大的恐慌,老刑警劉巖畸冲,帶你破解...
    沈念sama閱讀 219,490評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件嫉髓,死亡現(xiàn)場離奇詭異,居然都是意外死亡邑闲,警方通過查閱死者的電腦和手機(jī)算行,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來苫耸,“玉大人州邢,你說我怎么就攤上這事⊥首樱” “怎么了量淌?”我有些...
    開封第一講書人閱讀 165,830評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長嫌褪。 經(jīng)常有香客問我呀枢,道長,這世上最難降的妖魔是什么笼痛? 我笑而不...
    開封第一講書人閱讀 58,957評論 1 295
  • 正文 為了忘掉前任裙秋,我火速辦了婚禮,結(jié)果婚禮上缨伊,老公的妹妹穿的比我還像新娘摘刑。我一直安慰自己,他們只是感情好倘核,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,974評論 6 393
  • 文/花漫 我一把揭開白布泣侮。 她就那樣靜靜地躺著,像睡著了一般紧唱。 火紅的嫁衣襯著肌膚如雪活尊。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,754評論 1 307
  • 那天漏益,我揣著相機(jī)與錄音蛹锰,去河邊找鬼。 笑死绰疤,一個(gè)胖子當(dāng)著我的面吹牛铜犬,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 40,464評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼癣猾,長吁一口氣:“原來是場噩夢啊……” “哼敛劝!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起纷宇,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤夸盟,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后像捶,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體上陕,經(jīng)...
    沈念sama閱讀 45,847評論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,995評論 3 338
  • 正文 我和宋清朗相戀三年拓春,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了释簿。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,137評論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡硼莽,死狀恐怖庶溶,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情沉删,我是刑警寧澤渐尿,帶...
    沈念sama閱讀 35,819評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站矾瑰,受9級特大地震影響砖茸,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜殴穴,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,482評論 3 331
  • 文/蒙蒙 一凉夯、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧采幌,春花似錦劲够、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,023評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至磨取,卻和暖如春人柿,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背忙厌。 一陣腳步聲響...
    開封第一講書人閱讀 33,149評論 1 272
  • 我被黑心中介騙來泰國打工凫岖, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人逢净。 一個(gè)月前我還...
    沈念sama閱讀 48,409評論 3 373
  • 正文 我出身青樓哥放,卻偏偏與公主長得像歼指,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子甥雕,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,086評論 2 355

推薦閱讀更多精彩內(nèi)容