存储文件的最佳方式

Best way to store files

在服务器上存储上传文件的标准方式是什么?在数据库中作为 binary 还是在硬盘上,路径存储在数据库中?

Microsoft 对此主题进行了研究:https://www.microsoft.com/en-us/research/publication/to-blob-or-not-to-blob-large-object-storage-in-a-database-or-a-filesystem/

存储非常小的文件将使您在数据库中获得最佳性能。存储较大的文件可为您的硬盘提供最佳性能。我为我工作的一家公司研究了这个。当文件大小为 512 kB 或更大时,文件系统性能将优于数据库。在此之后数据库的性能将迅速下降。

将文件存储在数据库中将使您的优势在于可以使所有内容保持同步。您可以配置在删除文件记录时删除文件 BLOB。但是,存储大文件会给您带来非常糟糕的性能,并且创建备份可能需要很长时间。