現在的位置: 首頁 > 資料庫 > 正文

Nginx+NFS、Redis和分散式文件系統Moosefs有哪些優缺點

2020年07月02日 資料庫 ⁄ 共 1186字 ⁄ 字型大小 評論關閉

  大量小文件存儲一直是典型的應用場景之一,現在有3KW的數據,單條數據都很小的,如果按key-value來看的話,key就是32位的MD5字元串,value按平均算大概是100位元組左右。下面學步園小編來講解下Nginx+NFS、Redis和分散式文件系統Moosefs有哪些優缺點?

  Nginx+NFS、Redis和分散式文件系統Moosefs有哪些優缺點

  1、直接生成靜態文件,利用nginx對靜態文件的高效做靜態緩存。

  當時伺服器硬體資源有限,所以就採用這種方式,一直源用至今。

  伺服器間通過NFS來共享

  太多小文件,不方便管理

  NFS不方便運維與擴展

  文件內容很小(100位元組左右),3KW大概就是2.5G大小左右

  不過文件存儲的時候和硬碟分區的族大小有關,在這裡磁碟分區的族大小為8K,所以儘管文件內容只有100位元組,但是實際存儲到磁碟上的時候單個文件其實是8K

  所以3KW的文件世界占的磁碟空間大約為:200G左右(嚴重浪費空間啊)

  2、Redis(V2.2.11)【KV資料庫】

  聽同事說開啟VM會使性能急劇下降,所以基本無視VM,數據全放內存。

  key為32位MD5字元串

  測試數據:10W數據大概占內存20M

  測試數據:500W數據大概占內存1G,持久化的rdb數據文件大概350M

  推算3KW數據:內存6G,持久化的rdb數據文件大概為2G(壓縮了?)

  因為Redis在持久化的時候內存會加倍,和考慮到數據的增長,所以需要1台20G內存的機器基本就沒問題了(容災啥的另算)。

  Redis非常快,如果硬體條件沒問題,基本選這個最好了。

  Nginx+NFS、Redis和分散式文件系統Moosefs有哪些優缺點

  3、Moosefs(MFS)【分散式文件存儲系統】

  mfs支持NFS的方式mount到本地直接操作(如使用mfs,則現在的架構基本不用改)

  最基本的需要一台主控伺服器(MasterServer)、一台數據伺服器(ChunkServer)

  文件和目錄的索引需要全部載入到主控伺服器的內存中,所以對主控伺服器的內存有一定的要求

  寫入30W文件,到20W的時候寫入就開始下降得厲害了(我的5400轉的筆記本硬碟)

  30W文件,4W目錄,主控伺服器佔用大概120M內存

  文件存儲方式貌似和普遍的文件一樣單個存儲的(不確定),30W文件大概佔了2.4G的磁碟空間(同樣是8K一個文件)。

  小文件一樣很多,不方便維護與遷移(不知是否我設置不對?)。

  內存、硬碟都佔用得比較多,而且性能相對來說不是很出眾。

  所以這個基本不考慮了。

  以上就是關於「Nginx+NFS、Redis和分散式文件系統Moosefs有哪些優缺點」的內容,希望對大家有用。更多資訊請關注學步園。學步園,您學習IT技術的優質平台!

抱歉!評論已關閉.