Amazon ec2 AmazonS3是否曾经独立于EC2而不可用?

Amazon ec2 AmazonS3是否曾经独立于EC2而不可用?,amazon-ec2,amazon-s3,backup,Amazon Ec2,Amazon S3,Backup,目前,我们正在将所有用户生成的内容上载到一个中等大小的EC2实例,然后从那里运行cron作业,将所有上载的内容同步到S3。我们有一些在后端运行的代码(每次您需要访问任何上载的文件时),用于检查资源是否已移动到S3,或者是否仅在上载实例上可用 这似乎有点浪费,但它确实提供了冗余性——如果S3关闭,我们有一些javascript代码,可以强制从我们的上传框提供文件。实际文件上载存储在EBS中,而不是实例上 我们现在在S3存储桶中有大约150GB的文件;这使得执行S3存储桶的单独备份非常耗时,几乎不可

目前,我们正在将所有用户生成的内容上载到一个中等大小的EC2实例,然后从那里运行cron作业,将所有上载的内容同步到S3。我们有一些在后端运行的代码(每次您需要访问任何上载的文件时),用于检查资源是否已移动到S3,或者是否仅在上载实例上可用

这似乎有点浪费,但它确实提供了冗余性——如果S3关闭,我们有一些javascript代码,可以强制从我们的上传框提供文件。实际文件上载存储在EBS中,而不是实例上

我们现在在S3存储桶中有大约150GB的文件;这使得执行S3存储桶的单独备份非常耗时,几乎不可能定期运行


所以,我的问题是,这有必要吗?有人能告诉我一些S3和EC2之间的正常运行时间统计数据吗?S3关闭了,但EC2可用吗?似乎将所有内容直接上传到S3并相信它已启动可能更简单。。。。另一方面,我们可以将所有内容存储在EBS中,完全忘记S3,这似乎更有意义。

您的EC2实例比S3更可能停机。例如,您有一个实例在单个主机上运行,在单个可用性区域中有一个网络连接。在此之前,在平台级别上,EC2(特别是涉及EBS的EC2)已经有了,而S3自2008年以来没有发生过重大的可用性事件

S3是一个分布在您选择的所有地区的分布式系统。坦率地说,在具有最终一致性保证的对象级别上操作要比EBS和EC2所解决的问题简单得多,所有这些问题都通过设计增加了额外的一致性保证(以及失败的方式)

我通常让上传过程将S3作为备份存储——直接上传到S3,或者以写通方式通过EC2实例上传——并接受如果S3关闭,那么我无法处理上传。这样做会引入一种故障模式,即您的应用程序正在运行,而S3没有运行,但它显著降低了数据丢失的可能性,这通常是一个比不可用更严重的问题。这还允许您通过不同可用性区域中的不同EC2实例同时处理上载,避免EC2故障,以及通过实例存储实例避免EBS故障