用户新增或编辑文章,通过文本编辑器上传图片至阿里云OSS,上传成功。
但当用户去除编辑中的图片,之前上传成功的图片不要了,可图片还残留在阿里云OSS中。
请问,如何使用定时任务,删除使用编辑器已上传至 阿里云OSS ,但不再引用的图片?
提供一下思路吧:
每次进行图片上传时,将图片id存入redis中的listA一份. 然后当上传完点击确认按钮后,把此时即将存入数据库的图片id存入列表listB一份.
然后每过一段时间就执行一下定时任务,清理 listA - listB 对应id的垃圾图片.
listA-listB表示差集. 即: 在listA 中的,但是不包括listB中的
oss里面存的都是有效的,只是自己不用了;
所以自己得保存所有的记录,然后自己标记有不有效;
定时去删除或者有新的替换就删除旧的(如果存在旧的)
不知道为什么,我给你们写评论,系统给出提示,评论服务,非法评论。
我现在尝试根据你们给出的建议,尝试去实现功能。谢谢你们!
大致是这样的,上传图片时把oss上的key保存到数据库,在你说的编辑不需要时,根据这个keu去oss上删了