社交网站图像数据库管理

问题描述 投票:0回答:2

这可能是非常基本的问题,但对我和其他人来说很重要。

问题

orkut、facebook 等社交媒体网站如何在服务器上存储图像?

选项:

我想到了这些选择

  • a) 通过转换为字节码/二进制将所有图像保留在数据库中。
  • b) 为每个用户创建一个新文件夹,并根据他们的图库名称保存照片。
  • c)或者其他我(Anup)还没猜到的东西。
mysql database image social-networking social-media
2个回答
6
投票

a) 没有转换为字节码/二进制码,图像是二进制数据,简单直接地存储在数据库中。这绝对不是保存图片的最佳方式,因为每个图片请求都涉及数据库,Web 服务器直接提供静态内容更快。

b)这稍微好一点,但出于隐私原因,您应该确保无法浏览您的图像

c) Facebook 方式:Facebook 使用内容分发网络 (CDN) 来存储用户的图片,因此,如果浏览器请求特定图片,它会从距离其最近的服务器加载。图片被分发到分布在世界各地的多个服务器上。 YouTube 和视频文件也是如此。


4
投票

绝对将图像作为二进制文件存储到磁盘。将它们存储在数据库中会产生不必要的开销。我听说一些大型图像托管商将许多图像存储在同一个文件中,并在数据库中存储字节偏移量,因此服务器可以保持存储文件打开,并且只需在其中

seek
即可获取其他图像。这将使您免于对内核的
open
close
调用。

© www.soinside.com 2019 - 2024. All rights reserved.