我可以将文件块保存在不同的文件夹中吗

Can I save the file chunks in different folders

在我的项目中,我使用 Golang 作为服务器,mongodb 作为数据库,现在我想为用户限制 space,并且想知道有一种方法可以保存 gridfs 块在不同的文件夹中,例如,如果用户 ID 是 123,则创建 123 目录并在那里保存块。

mongodb 不会将文件保存为 "physical" 文件,因此您不能将其存储在文件夹中,因为 mongodb 从文件内容创建 chunks。 我可以为您提供 2 种方法来解决您的问题

  1. 您可以在用户文档中添加 2 个不同的字段,1) space 和 2) 使用的 f.e。每次用户上传文件时,您都可以检查文件大小和免费 space ,如果是这样,则更新用户字段并保存文件

  2. 你可以每次检查用户的文件大小,但如果用户有很多大文件,那么操作会花费很多时间