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

文件上传并存储,有必要分文件夹么?好处是什么?

  •  
  •   lincya · 2020-05-12 14:27:51 +08:00 · 2148 次点击
    这是一个创建于 1662 天前的主题,其中的信息可能已经有所发展或是发生改变。

    在项目中遇到文件上传,用户访问的问题。

    有以下疑惑:

    文件上传后,是否有必要根据场景分文件夹?具体场景是什么?意义?

    13 条回复    2020-05-12 22:47:23 +08:00
    luckyrayyy
        1
    luckyrayyy  
       2020-05-12 14:35:36 +08:00
    量大的时候方便管理,浏览也方便
    wunonglin
        2
    wunonglin  
       2020-05-12 14:37:17 +08:00
    1 、没必要。
    return
    nutting
        3
    nutting  
       2020-05-12 14:38:58 +08:00
    有啊,可能有文件数量限制。删除维护什么的也方便
    play78
        4
    play78  
       2020-05-12 14:39:07 +08:00
    我是这样的存的。 /场景 /年月 /日 /UUID.后缀
    nutting
        5
    nutting  
       2020-05-12 14:39:37 +08:00
    谷歌的 fastdfs 就是分文件夹的
    GM
        6
    GM  
       2020-05-12 14:40:41 +08:00
    看数量,如果数量少,无所谓,但是如果可能很多,你肯定要分文件夹。不然一个有数十万甚至上百万的目录是几乎没法管理的,打都打不开。
    可以不分场景,但是必须要根据日期等分一下文件夹
    RiESA
        7
    RiESA  
       2020-05-12 16:29:28 +08:00
    hash 打散存储
    gamexg
        8
    gamexg  
       2020-05-12 16:31:27 +08:00
    虽然较新的文件系统单目录存放文件数量限制够用了
    但是你要考虑运维一不小心运行了 ls 卡死的问题,所以如果确认文件数量会很多,还是分目录保存比较好。
    Vegetable
        9
    Vegetable  
       2020-05-12 16:36:11 +08:00
    就像用缓存,不分库就要加 Prefix,实际上都是为了区分命名空间,文件也一样,我觉得分好一点。
    jsq2627
        10
    jsq2627  
       2020-05-12 17:35:58 +08:00
    虽然说不少太多好处,不过目前所见大多数应用会去分文件夹
    xdeng
        11
    xdeng  
       2020-05-12 17:42:31 +08:00
    血的教训告诉你 几万个文件放在一个文件夹的时候 打开无比的慢 不管是 ui 界面打开还是 写程序打开。
    xdeng
        12
    xdeng  
       2020-05-12 17:42:54 +08:00
    合理的应该是按年月日分文件夹
    flynaj
        13
    flynaj  
       2020-05-12 22:47:23 +08:00 via Android
    看数量,少的话一年一个文件夹,正常一个月一个,在多一天一个
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5478 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 07:50 · PVG 15:50 · LAX 23:50 · JFK 02:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.