自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

緩存大量小文件?Redis是首選!

運維 系統(tǒng)運維 Redis
緩存文件,我們可以選擇用Web、文件系統(tǒng)或數(shù)據(jù)庫來做,比如本文中列出的Nginx、MooseFS以及Redis。作者需要將3KW條小數(shù)據(jù)做緩存以在高并發(fā)的時候依然可以快速響應(yīng),于是比較了這三種方式做緩存的優(yōu)劣,結(jié)論是Redis最合適。

現(xiàn)在有3KW的數(shù)據(jù),單條數(shù)據(jù)都很小的,如果按key-value來看的話,key就是32位的MD5字符串,value按平均算大概是100字節(jié)左右。

現(xiàn)在需要將這些數(shù)據(jù)做緩存以在高并發(fā)的時候依然可以快速響應(yīng)。

因為這些數(shù)據(jù)基本沒有冷熱數(shù)據(jù)之分,所以需要將全部數(shù)據(jù)都放到緩存中。

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

  • 當(dāng)時服務(wù)器硬件資源有限,所以就采用這種方式,一直源用至今。
  • 服務(wù)器間通過NFS來共享
  • 太多小文件,不方便管理
  • NFS不方便運維與擴展
  • 文件內(nèi)容很小(100字節(jié)左右),3KW大概就是2.5G大小左右
    • 不過文件存儲的時候和硬盤分區(qū)的族大小有關(guān),在這里磁盤分區(qū)的族大小為8K,所以盡管文件內(nèi)容只有100字節(jié),但是實際存儲到磁盤上的時候單個文件其實是8K
    • 所以3KW的文件世界占的磁盤空間大約為:200G左右(嚴(yán)重浪費空間啊

2、Redis(V2.2.11)【KV數(shù)據(jù)庫】

  • 聽同事說開啟VM會使性能急劇下降,所以基本無視VM,數(shù)據(jù)全放內(nèi)存。
  • key為32位MD5字符串
  • 測試數(shù)據(jù):10W數(shù)據(jù)大概占內(nèi)存20M
  • 測試數(shù)據(jù):500W數(shù)據(jù)大概占內(nèi)存1G,持久化的rdb數(shù)據(jù)文件大概350M
  • 推算3KW數(shù)據(jù):內(nèi)存6G,持久化的rdb數(shù)據(jù)文件大概為2G(壓縮了?)
  • 因為Redis在持久化的時候內(nèi)存會加倍,和考慮到數(shù)據(jù)的增長,所以需要1臺20G內(nèi)存的機器基本就沒問題了(容災(zāi)啥的另算)。
  • Redis非常快,如果硬件條件沒問題,基本選這個***了。

3、Moosefs(MFS)【分布式文件存儲系統(tǒng)】

  • mfs支持NFS的方式mount到本地直接操作(如使用mfs,則現(xiàn)在的架構(gòu)基本不用改)
  • 最基本的需要一臺主控服務(wù)器(Master Server)、一臺數(shù)據(jù)服務(wù)器(Chunk Server)
  • 文件和目錄的索引需要全部加載到主控服務(wù)器的內(nèi)存中,所以對主控服務(wù)器的內(nèi)存有一定的要求
  • 寫入30W文件,到20W的時候?qū)懭刖烷_始下降得厲害了(我的5400轉(zhuǎn)的筆記本硬盤)
  • 30W文件,4W目錄,主控服務(wù)器占用大概120M內(nèi)存
  • 文件存儲方式貌似和普遍的文件一樣單個存儲的(不確定),30W文件大概占了2.4G的磁盤空間(同樣是8K一個文件)。
  • 小文件一樣很多,不方便維護與遷移(不知是否我設(shè)置不對?)。
  • 內(nèi)存、硬盤都占用得比較多,而且性能相對來說不是很出眾。
  • 所以這個基本不考慮了。

作者:QLeelulu  出處:http://QLeelulu.cnblogs.com/

【編輯推薦】

  1. 主流NoSQL數(shù)據(jù)庫之Redis全面評測
  2. 5款實用又免費Linux緩存系統(tǒng)
  3. SQLite做為本地緩存應(yīng)注意的幾大方面
責(zé)任編輯:yangsai 來源: cnblogs
相關(guān)推薦

2013-10-23 10:48:30

HadoopHDFS文件處理

2013-10-23 11:22:47

HadoopHadoop處理大量小

2024-05-31 13:29:47

2023-03-10 13:33:00

緩存穿透緩存擊穿緩存雪崩

2019-10-12 14:19:05

Redis數(shù)據(jù)庫緩存

2020-08-13 14:58:06

Spark小文件存儲

2022-04-21 09:26:41

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

2011-08-01 18:13:22

瑞星團購

2021-06-05 09:01:01

Redis緩存雪崩緩存穿透

2012-10-09 16:37:20

FastDFS

2022-12-10 22:52:54

Redis緩存數(shù)據(jù)

2023-06-08 07:34:19

HDFS小文件壓縮包

2015-10-21 11:39:41

Ceph小文件存儲海量數(shù)據(jù)存儲

2024-01-17 09:10:19

2022-03-08 00:07:51

緩存雪崩數(shù)據(jù)庫

2013-10-28 10:42:45

2013-03-11 14:42:08

Hadoop

2017-12-05 20:27:04

系統(tǒng)

2023-04-14 07:34:19

2020-03-16 14:57:24

Redis面試雪崩
點贊
收藏

51CTO技術(shù)棧公眾號