用户上传冗余的图片文件,一般是怎么处理的呀?

2020-06-12 14:35:24 +08:00
 nyse

需要用户上传图片场景,比如传头像、发朋友圈,可能会遇到这些情况:

用户上传后,编辑内容,删掉原有的图片;

部分图片上传失败,导致用户又重新上传了一遍;

用户换头像;

...

等等情况,会导致服务器上存在用不着的冗余文件,浪费存储空间。

大家一般都是怎么处理这些情况的?

5032 次点击
所在节点    程序员
25 条回复
daozhihun
2020-06-12 22:28:43 +08:00
最靠谱的就是不管它,浪费就浪费,没多少钱。
如果真有需求要清理掉,其实比较好处理:
定期任务:把所有图片的文件名和 hash 找出来,然后去比对数据库里有没有(数据库可以存文件名和 hash,在保存表单的时候),没有的就删掉。
为了不影响系统正常的运转,可以分散在半夜里运行,并且可以只清理一年以前的。
------
不过我还是觉得不要处理比较好,等你的存储真的不够了,你的产品应该赚了很多很多钱了随便再怼个几百 T 的存储没多少钱;如果你的新存储怼不起,很可能公司就要关门了
TransAM
2020-06-12 23:09:08 +08:00
每个用户的每个唯一图片起个名字,不要用 hash,比如用户头像就是 <uid>_icon 。写的时候直接覆盖这个文件。
JamesR
2020-06-12 23:23:10 +08:00
我都专门写个算法,每次上传成功后,清理以前上传过的用不着的文件。就是开发这个功能要稍微多花点时间。
tuine
2020-06-13 07:19:29 +08:00
@imdong 有点强😂
BigDogWang
2020-06-13 12:54:57 +08:00
对象存储默认生命周期一天后删除,用户确认了的提交会去掉这个删除的定时

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/680982

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX