Redis适合存储海量小文件吗? - V2EX
Tianpu
V2EX    Redis

Redis适合存储海量小文件吗?

  •  
  •   Tianpu Mar 30, 2013 16777 views
    This topic created in 4798 days ago, the information mentioned may be changed or developed.
    大约有100万左右的小文件 是动态生成的.svg图像 每个小于4k 过期时间是86400秒

    并发需求上不是很大 .svg的生成比较耗费资源 虽然耗时也就是0.02秒左右

    为了不给系统留下隐患 还是需要缓存下

    硬件上大约能拿出4G内存来存储

    我只有使用memcachedb的经验

    有人能给点建议,redis适合我的这个需求吗?
    9 replies    1970-01-01 08:00:00 +08:00
    yuyuyu101
        1
    yuyuyu101  
       Mar 31, 2013   1
    memcached对于大字符串效率更高
    ElmerZhang
        2
    ElmerZhang  
       Mar 31, 2013   1
    直接用Memcached就可以了,反正内存够
    thetcc
        3
    thetcc  
       Mar 31, 2013   1
    小文件是多小?只要你存储的的内容不要超过实际内存,应该没什么问题。redis里单个value的最大值是512MB,所以你小文件是绝对不会超过的。redis的key,value都可以是二进制数据或字符串。
    twm
        4
    twm  
       Mar 31, 2013 via iPhone   1
    100w,小意思
    ipconfiger
        5
    ipconfiger  
       Mar 31, 2013   1
    你还不如直接/dev/shm来得直接简单点呢
    Livid
        6
    Livid  
    MOD
    PRO
       Mar 31, 2013   1
    几个问题:

    - 实际占用的内存会大于 4G
    - 如果超过可用内存,Redis 会直接崩溃
    - 崩溃的时候可能会丢一部分数据
    - 崩溃之后再重启时,会需要花一点时间将数据从磁盘恢复到内存中,数据越多,这个时间就越长
    moyaya
        7
    moyaya  
       Mar 31, 2013   1
    redis非常吃内存啊!
    lookhi
        8
    lookhi  
       Mar 31, 2013   1
    并发需求上不是很大 .svg的生成比较耗费资源 虽然耗时也就是0.02秒左右

    压力都不大啊,每次都动态生成吧。做最大1000个图片的缓冲队列就好了。
    Tianpu
        9
    Tianpu  
    OP
       Apr 1, 2013
    感谢所有回复者 我也是印象中存在一个redis可能会崩溃的印象

    查找一翻资料后 一开始使用文件存储 最终修改成mysql存储

    文件存储是这样的结构:
    {basedir}/substr(crc32({name}),1,3)/{name}.svg
    由于未知的原因,竟然偶尔会失败,不确定是硬盘缓存导致写入失败还是别的什么原因,总之产生了很诡异的错误,大致是文件写造成的,而且是比较随机的出现

    然后又产生了别的需求 就修改成myisam存储了 目前还算稳定 暂时没有发现问题

    我不介意丢失文件 反正恢复不麻烦 只是不想偶尔还要去检查下系统是不是完蛋了

    楼上所有回复者已经送钱

    谢谢
    About     Help     Advertise     Blog     API     FAQ     Solana     2681 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 100ms UTC 15:27 PVG 23:27 LAX 08:27 JFK 11:27
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86