将图像作为文件或数据库存储在服务器上作为字节数组

时间:2016-05-23 14:29:28

标签: angularjs mongodb

我正在开发一个网站,允许用户上传每个项目的图像(我猜每个用户会有数百个)。

更优选的是:

  1. 将图像保存为DB(mongodb)或
  2. 中的字节
  3. 作为服务器中的文件?
  4. 我真的不知道将这个问题放在" Stack Exchange"论坛。

    谢谢(即使是指导我)

1 个答案:

答案 0 :(得分:2)

MongoDb每个文档的文档大小限制(16MB)。

您可以考虑使用GridFS来存储图像,因为这可以分片,因此可以将负载拆分到不同的服务器。

See gridFS manual for more information

  

GridFS是用于存储和检索超过的文件的规范   BSON文件大小限制为16 MB。

     

GridFS不是将文件存储在单个文档中,而是将其分割   将文件分成部分或块1,并将每个块作为单独存储   文献。默认情况下,GridFS使用255 kB的块大小;那是,   GridFS将文件分成255 kB的块,但不包括   最后一块。最后一个块只有必要的大小。同样的,   不大于块大小的文件只有最后一个块,   只使用所需的空间加上一些额外的元数据。