我目前正在构建一个后端应用程序,该应用程序需要存储和提供大量图像和视频(每个> 1Mio。)。这些文件显然会被上传,有时会被删除,但不会更新。
我对是否将文件存储在数据库中还是文件系统中进行了一些阅读,并决定使用文件系统进行文件存储(并将元数据保留在数据库中)。
我如何上传文件:我正在通过文件服务器上的REST端点同步上传文件。如何删除文件:通过在数据库元数据中将它们标记为过时,然后让文件服务器中的cron作业进行实际删除,来异步删除文件。
现在,我正在尝试找出如何以同步方式备份数据库和文件服务器。我不是devOps专家,我在Google研究期间没有发现任何有用的东西(可能是因为我缺乏正确的术语来回答一个好问题)。
我当前的策略中是否存在逻辑漏洞?有什么更好的选择? 目前,我没有使用任何云存储解决方案,所以请不要提出诸如亚马逊提供S3等服务
谢谢!
您可以做的简单的事情是设置一个“到期”日期而不是“ obsoletFlag”,并考虑一个小于该到期期限的备份最大期限。
使您的删除作业仅处理“过期”项目。
您将不得不存储更长的时间,但是任何未到期的备份都可以相应地恢复。
问候