149

我需要使用 php mysql 和 html 创建一个 Web 应用程序。请求和数据的数量将非常高。我需要亚马逊服务器空间。

我阅读了亚马逊的文档,发现 S3 是一个提供简单 Web 服务接口的存储。EC2 是一种 Web 服务,可在云中提供可调整大小的计算容量。

我可以购买 S3 并运行 php 并查询我的数据库吗?

请告诉我 Amazon S3 和 Amazon Ec2 实例之间的区别。

4

6 回答 6

212

EC2 实例就像一台运行 Windows 或 Linux 的远程计算机,您可以在其上安装所需的任何软件,包括运行 PHP 代码的 Web 服务器和数据库服务器。

Amazon S3 只是一种存储服务,通常用于存储大型二进制文件。亚马逊还拥有其他存储和数据库服务,例如用于关系数据库的 RDS 和用于 NoSQL 的 DynamoDB。

于 2013-01-18T04:28:39.223 回答
36

亚马逊 EC2

它只是一种托管在 AWS 数据中心某处的普通计算机。并且,作为其中的一部分,它具有硬盘驱动器或本地存储。而且,从某种意义上说,任何想要长期存储的东西都不想存储在 EC2 实例的硬盘驱动器上,这不是永久性的,因为在添加服务器时容易进行扩展和缩减,副-反之亦然(保持弹性属性)。而且,您不希望将想要永久保存在本地存储中的东西保存在本地存储中,因为当您添加或删除实例时,您可能会丢失该信息或丢失该数据。EC2 旨在将您的应用程序部署在服务器上(使用其处理能力),该服务器分别通过 S3 和 RDS 提供内容。因此,Amazon EC2 适用于任何类型的处理活动。

亚马逊 S3

以 Netflix 为例,他们实际上存储了数百万个为其内容提供支持的物理视频文件。必须有这些视频文件和这些存储的多个版本。这就是 S3 发挥作用的地方。Amazon S3 是 AWS 的存储平台。特称大容量无限存储桶(上限很高)。因此,S3 是存储文档、电影、音乐、应用程序、图片以及您想要存储的任何内容的理想场所,只需转储到 S3 上即可。而且,这将是您放在那里的文件的多个冗余和备份。因此,您将始终拥有决定存储在 S3 上的任何文件的高可用性。

S3的用途:

  1. 大容量存储容器
  2. 长期储存

因此,作为一个完整的故障安全系统,Amazon S3 是您想要长期保存的任何东西的理想场所,它有大量冗余,而且它非常棒,因为它基本上是无限的存储空间。因此,Amazon S3 是 Netflix 存储他们必须存储的数千 PB 视频文件的地方。因此,Amazon S3 是海量存储桶。

于 2017-11-26T07:40:18.363 回答
20

Ec2 实例足以运行服务器,S3 存储不需要运行服务器,它仅用于存储您的资源,也可以存储在您的 ec2 实例中。

于 2013-01-18T05:04:11.767 回答
17

尽管您的标题表明您在询问 Amazon S3 和 Amazon EC2 实例之间的区别,但在帖子中您说您想使用它来为您的客户/用户提供服务,所以我会指出,如果您想要一个 CDN(内容交付网络),那么Amazon S3不是真正的 CDN。S3 专为内容存储而设计。用于内容交付的正确 Amazon 服务是Amazon CloudFront。休息一下,你的标题的答案已经被问到了。可能会在将来帮助某人。

于 2014-01-31T20:44:15.590 回答
2

所以我的理解是EC2提供了一个完整的虚拟机,我们可以用它来安装任何东西。无论是巨大的物理文件还是部署您的 .Net/PHP 代码。但是与 S3 相比,EC2 的成本非常高。

S3 可用于存储巨大的物理文件并部署您的静态网站。并且与 S3 相关的成本非常低。所以我们应该将我们的物理文件存储在 S3 存储桶上,并将我们的代码部署在 EC2 实例上

于 2020-05-16T11:17:54.393 回答
2

EC2 使用 EBS,它是基于块的存储,如 linux/windows 文件系统 <<--这是运行服务器服务(php、apache、mySQL 等)所必需的。这可能是短暂的,因此您可以通过重新启动或持久丢失数据,您必须指定持久。

S3 使用对象存储 - blob - Binary Large OBject 文件系统,类似于平面数据库,存储在对象级别。这通常用于任何场景中的任何类型的静态文件。不能用于在 EC2 实例上运行服务。

于 2018-07-20T18:37:38.960 回答