【问题标题】:Best setup to work with amazon AWS与亚马逊 AWS 合作的最佳设置
【发布时间】:2013-01-06 14:56:19
【问题描述】:

我有一个网站,它从不同的社交媒体服务获取备份,然后将数据存储在服务器上,然后显示在我的网站上。内容包括视频、图像和文本数据。

目前我正在使用带有 RDS 和 EBS 的 EC2 实例。数据存储在 EBS 卷中,但随着数据量足够大,超过 1 TB 并且还在增加。每次我的 EBS 卷被填满时,我都会附加另一个卷。

然后我将 S3 添加到我的设置中。 Cron 作业在 S3 上运行和存储数据,EC2 实例显示来自 S3 的数据。为此,我正在使用 PHP SDK。

我面临的问题是 S3 在我当前的设置中非常慢。 请建议我的设置是否良好,或者我需要对我的设置进行一些更改,以及如何加速 S3。或者我应该选择其他方式来设置。 EC2 实例是运行 CentOS 的大型预留实例。

我听过一些关于 S3fs 将 S3 存储桶作为卷安装到 Ec2 的信息。这是一个不错的选择吗,因为当我将 S3 Bucket 安装到 Ec2 实例时,传输速率非常慢。

我是 AWS 的新手。我的用户不直接从 S3 访问文件,而是通过我在 EC2 实例上运行的网站进行访问。

【问题讨论】:

    标签: amazon-web-services amazon-s3 amazon-ec2


    【解决方案1】:

    RDS 是存储元数据的不错选择,例如标签、cmets 和其他有关多媒体文件的相关信息。 S3 适合存储静态内容,例如视频、音频和图片。我认为您使用 RDS 和 S3 的方法已经足够好了。

    EBS 支持的实例有利于持久性。如果您将元数据存储在 RDS 上并将静态内容存储在 S3 上,那么您应该使用 EBS 支持的 EC2 实例的唯一原因是您现在有一些未版本化的配置文件。如果不是这种情况,假设您的配置已签入版本控制并且每次都可以按需提取新实例,那么您可能希望放弃 EBS 卷以支持临时存储。这可能会给您带来一些性能提升,但没什么大不了的。

    关于您对 S3 延迟的担忧,是的,S3 很慢。虽然您的所有写入都可能直接发生在 S3 上,但我强烈建议您为 S3 存储桶设置 Amazon CloudFront,并让您的网站使用来自 CloudFront 的多媒体内容。 CloudFront 是一个内容交付网络 (CDN),可与磁盘卷(EBS 支持或临时)以及 S3 一起使用。设置它不会超过几分钟。 CloudFront 还支持RTMP 上的流媒体文件。您可能需要像 GPAC 这样的库来提示多媒体文件,以使它们可以流式传输(如果尚未完成)。然后,您可能需要考虑为流式传输的视频/音频文件创建一个分发版,并为图像、Javascript、样式表和其他文本文件创建另一个分发版。

    希望这会有所帮助。

    【讨论】:

      【解决方案2】:

      为了更快地从 Amazon S3 获取和上传文件,我使用 batch() found here

      您也可以使用cloudfront 更快地获取文件。我认为 9gag 也使用 cloudfront..

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-08-08
        • 2018-05-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-10-16
        • 2015-02-02
        相关资源
        最近更新 更多