gpt4 book ai didi

google-app-engine - 删除 Blobstore 孤儿

转载 作者:行者123 更新时间:2023-12-02 05:25:10 26 4
gpt4 key购买 nike

从 Blobstore 中删除孤立 blob 的最有效方法是什么?

应用功能和范围:

  • 一个(已登录)用户想要创建一个包含一些常规内容的帖子数据存储区字段(例如姓名、姓氏、评论)和 blob(图像)。
  • 此外,blob 是在恢复之前异步上传的的数据通过 POST 发送
    • 这很可能会产生孤儿,例如,用户可能会上传图片但由于某种原因未完成表单。通过在发送其余数据之前不使用 blob 的异步上传可以最大限度地减少此问题,但是,此问题在较小的范围内仍然存在。

可能但效率低下的解决方案:

  • 每当帖子完成时(即发送其余数据),您将 blob 键添加到“已用 blob”表中。然后,您可以经常运行一个 cron,并将所有 blob 与“已用 blob”表进行比较。一个多小时前上传但仍“未使用”的将被删除。
    • 我的理解是,遍历可能包含数十万个 blob 键的列表并将其与另一个包含数十万个“已用 blob 键”的表进行比较是非常低效的。

有更好的方法吗?我搜索过类似的帖子,但找不到任何提及有效解决方案的帖子。

提前致谢!

最佳答案

感谢评论。但是,我很了解这些解决方案,但我发现它们效率太低。查询数千个标记为“未使用”的条目并不理想。

我相信我想出了一个更好的方法,并且想听听您对此的看法:

保存 blob 后,会立即创建一个延迟任务以在一小时后删除同一个 blob。如果帖子被创建并保存,延迟任务将被删除,因此 blob 不会在一个小时后被删除。

我相信这可以让您不必每小时查询数千个条目。

您对这个解决方案有何看法?

关于google-app-engine - 删除 Blobstore 孤儿,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13186494/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com