File 如何在保存文件之前对其进行压缩?

File 如何在保存文件之前对其进行压缩?,file,compression,storage,File,Compression,Storage,我想做一个免费的照片分享网站,想知道什么是降低存储成本的最好方法?显然,没有明确的答案,我知道这一点。我知道最便宜的是每GB 0.15美元。但是,还有什么我可以做的编程智慧,也许压缩文件或什么 图像通常已被压缩,因此您不会保存在此处。您可以而且应该做的是拥有一个全局映像存储并避免其中的重复。原因是人们经常多次上传同一个文件(一张团体照片可以由团体的所有成员上传) 这就是它的工作方式: 您有一个全局图像存储,其中每个图像文件都有一个 参考计数器 当用户上载某个文件时,您计算其哈希值,并查看图像存

我想做一个免费的照片分享网站,想知道什么是降低存储成本的最好方法?显然,没有明确的答案,我知道这一点。我知道最便宜的是每GB 0.15美元。但是,还有什么我可以做的编程智慧,也许压缩文件或什么

图像通常已被压缩,因此您不会保存在此处。您可以而且应该做的是拥有一个全局映像存储并避免其中的重复。原因是人们经常多次上传同一个文件(一张团体照片可以由团体的所有成员上传)

这就是它的工作方式:

  • 您有一个全局图像存储,其中每个图像文件都有一个 参考计数器
  • 当用户上载某个文件时,您计算其哈希值,并查看图像存储中是否有大小相同、哈希值相同的文件。如果这样做,则会增加一个引用 计数器,并通过在与用户关联的记录中存储指向现有文件的链接,将用户上载与现有文件关联
  • 当用户删除“他的”文件时,删除链接并减少引用计数器。如果计数器达到零,则删除该文件
  • 如果您的存储允许文件编辑,则需要使用“写时复制”,即在用户修改文件时复制文件