做 saas 平台,现在接到新需求,给每个租户做硬盘空间配额,比如每个租户只能使用 100G 的空间.在百度跟谷歌搜索过也没有找到有什么好用的工具,现在想到的办法就是用 redis 做减法,感觉好 low,想来问问各位大佬有没有什么好用的框架之类.用 spring cloud,要支持分布式的
1
lewis89 2020-08-13 15:35:08 +08:00
low 就对了,又不是百度云那种级别,还需要做分区容灾,要做自己的文件系统,外包小项目
ls -lh 遍历一下目录 然后 count 让 redis 去减就好了. |
2
pydiff OP 忘了说了,我这个是用 fastdfs 的
|
3
laminux29 2020-08-13 17:06:05 +08:00
1.统计一个路径下,所有文件的总容量,是一件会给存储设备造成巨大负载的操作。这事连谷歌都没办法做好,谷歌的系统是实时统计,但会卡很久很久。
2.建议用 redis 做加法,也就是存一个文件,就让 [已用容量 += 新文件尺寸] 。 3.做存储,要考虑很多东西,其中比较重要的是,备份与校验。 备份我就不提了,大家都懂。 校验的话,本地在把文件进行上传之前,就要先对文件做一次 hash,上传时,把 hash 也要上传。然后服务器在存取文件时,就可以用这个 hash 值来作为文件校验。 |