以前上传文件存在本地,每天备份一份至 S3. 这样做有一个坏处就是如果服务器出问题了 只能从 S3 上恢复至前一天的文档。
需求: 文件每次通过 carrierwave 上传,则直接上传至 S3. 如果该文文件被新的文件替换了,S3 也是增量上传文件,旧的文件还在,只是用不到。 如果该文件被删除了,S3 保留文件,只是 rails 不引用那个文件了。
故障恢复。 可通过设定一个时间点 将 S3 上的文件 下载至本地恢复到当时的情况。
好处:
预计方法有
好处:直接利用 S3 的 versioning,但是不宜过度利用。因为 aws 的本意是预防你删错文件。 坏处:大多 S3 上传插件 不支持 S3 的 versioning 用法。得自己写。
好处:上传插件易用,上传方法 常规。 坏处:还原的时候 依赖数据库,总觉得有点小小的不舒服。
求指点,求插件。