【发布时间】:2015-11-09 12:02:35
【问题描述】:
我正在使用 parse.com 开发 Web 应用程序,其中新闻内容可能有 20 张图片。什么是存储图像的最佳位置以避免将来产生后果,例如超载数据库性能成本等
1) 存储在 NOSQL 对象类型数据库中 2)存储在文件夹中,并在NOSQL中保存路径指针
每种方式的优缺点是什么?
【问题讨论】:
标签: javascript node.js database parse-platform nosql
我正在使用 parse.com 开发 Web 应用程序,其中新闻内容可能有 20 张图片。什么是存储图像的最佳位置以避免将来产生后果,例如超载数据库性能成本等
1) 存储在 NOSQL 对象类型数据库中 2)存储在文件夹中,并在NOSQL中保存路径指针
每种方式的优缺点是什么?
【问题讨论】:
标签: javascript node.js database parse-platform nosql
对于内容托管服务提供商来说,Parse 并不是一个很好的选择,因为您将面临存储上限,更不用说带宽使用方面的限制了。
使用 Parse 作为用户身份验证和应用数据的通用后端,然后将图像托管在另一个服务上,例如 AWS Simple Storage Service (S3),并使用 cloud code web hooks 引用这些资源。如果您想知道,Parse 实际上使用 Amazon 来托管他们所有的基础设施。
另一种选择是直接使用AWS API Gateway 访问图像。将图像存储在 S3 中后,您将能够为您的项目自动创建本机客户端 API。
【讨论】:
当您上传文件时,它将存储在磁盘上(这就是 Parse 的工作方式)。在您的数据库中,您只存储指向该文件的链接。通常,您的图像不一定会存储在一个位置或服务器中。为了可扩展性,您希望利用内容交付网络 (CDN),它可以将您的图像复制到世界各地的多个服务器。现在,无论您的图像存储在哪里,您都应该能够通过存储在数据库中的单个链接在任何地方访问它。
【讨论】:
您可以将路径存储到数据库中的图像,但您希望将实际图像存储在 S3 上并通过 Cloudfront (CDN) 访问它们。
您可以在您的 S3 存储桶前设置 cloudfront,这将允许通过 AWS 的 CDN 访问您的所有图像。
【讨论】: