V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
leben
V2EX  ›  问与答

网站图片存储方式

  •  
  •   leben · 2011-05-10 13:33:35 +08:00 · 6374 次点击
    这是一个创建于 4928 天前的主题,其中的信息可能已经有所发展或是发生改变。
    请问大家都是怎么处理照片存储的,file还是数据库。不同尺寸图片是直接读取原图生产,还是事先切割好的。
    目前我采用的方案是imagick生成不同尺寸图片,然后分文件夹存储,感觉速度太慢,而且管理很麻烦。
    计划使用mongodb来存放,只存储原图,各个尺寸请求时生成(这个实在没办法,boss画出来的ui图片尺寸经常发生变化,指望事先都切割好几乎不太可能)。
    另外,大家觉得生成不同尺寸图片是同步还是异步好。

    有经验的朋友分享和指点一下吧。谢谢。
    @livid 能不能谈谈footbig的经验,很可惜这个项目停掉了。
    12 条回复    1970-01-01 08:00:00 +08:00
    26z
        1
    26z  
       2011-05-10 13:51:36 +08:00
    目前在做的项目是将图片存进mongo数据库,请求时生成指定大小,非专业人士觉得似乎不太好。
    joyqi
        2
    joyqi  
       2011-05-10 14:18:48 +08:00
    原来做过一个nginx模块,在图片输出时按照参数输出指定大小的图片,也是用imagick的lib做的,前端再放两台squid,基本就可以搞定了
    leben
        3
    leben  
    OP
       2011-05-10 14:18:52 +08:00
    @26z 这是plan,目前是直接放在磁盘上。
    leben
        4
    leben  
    OP
       2011-05-10 14:51:47 +08:00
    @joyqi 后台存储呢?
    joyqi
        5
    joyqi  
       2011-05-10 14:57:50 +08:00
    后端直接放文件
    bergkamp
        6
    bergkamp  
       2011-05-10 15:48:21 +08:00
    切割好,存文件,可以第一次访问时候生成,但一定要存文件
    leben
        7
    leben  
    OP
       2011-05-10 16:02:49 +08:00
    @joyqi @bergkamp 存文件,备份就是复制文件夹吗?另外,这种方式一般要到多少文件,磁盘IO才会成为瓶颈。
    ratazzi
        8
    ratazzi  
       2011-05-10 16:05:20 +08:00
    第一次访问时生成吧,生成的不用怎么管理,保存好原图就可以了,如果存 mongodb 的话可以看下 QCon 视觉中国的 keynote,会有一些帮助或者说参考
    predator
        9
    predator  
       2011-05-10 16:58:51 +08:00
    后端无所谓,最成熟稳定的应该是用mysql的innodb了,做好分片应该问题不大
    前端用imagick做实时生成,挡一个squid或者varnish,如果前面还有CDN就更好了

    我觉得这个思路可行,正在进行中

    传统的预生成图片方式已经跑了十年,文件数太多了之后备份起来痛苦无比。
    undefined
        10
    undefined  
       2011-05-10 17:05:39 +08:00
    store in cloud.
    qichangxing
        11
    qichangxing  
       2011-05-11 20:51:35 +08:00
    leben
        12
    leben  
    OP
       2011-05-12 11:31:52 +08:00
    @qichangxing 豆瓣貌似就把图片保存在beansdb里吧,视觉中国用的mongodb。这几天试下来,我觉得mongodb是个好东西,呵呵。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3686 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 10:34 · PVG 18:34 · LAX 02:34 · JFK 05:34
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.