是Amazon S3 EC2以往任何时候都无法独立? [英] Is Amazon S3 ever unavailable independent of EC2?

查看:188
本文介绍了是Amazon S3 EC2以往任何时候都无法独立?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

目前,我们正在上传所有的用户生成的内容,以一个中等大小的EC2实例,然后从那里我们运行一个cron作业来同步所有上传的内容到S3的。我们有在后端(每次你需要访问任何上传文件时)运行,检查,看资源是否已被转移到S3约code,或者如果它只是可以在我们的上传实例。

Currently, we are uploading all of our user-generated-content to a medium-size EC2 Instance, and then from there we run a cron job to sync all of the uploaded content to S3. We have some code that runs on the backend (every time you need to access any uploaded file) that checks to see whether or not the resource has been moved to S3, or if it is just available on our uploads instance.

这似乎有点浪费,但它确实提供redundency - 如果S3下跌,我们有一些javascript code到位,迫使文件从我们的上传框服务。实际的文件上传存储在EBS,而不是实例。

This seems a little wasteful, but it does provide redundency -- if S3 is down, we have some javascript code in place that forces the files to be served from our upload box. The actual file uploads are stored in EBS, not on the instance.

我们已经得到了有关在S3存储桶文件150GB的价值,现在,这使得执行S3斗非常耗时,而且几乎不可能单独备份到任何种类的定期上运行。

We've got about 150GB worth of files in the S3 bucket right now; which makes performing a separate backup of the S3 Bucket extremely time consuming and nearly impossible to run on any sort of regular basis.

所以,我的问题是,这甚至是必要的?任何人都可以点我的S3和EC2之间的一些正常运行状态?是否曾经发生,S3是下降的,但EC2可用?看起来这可能是简单刚刚上传的一切直接到S3和信任,这是由....在另一方面,我们可以只存放在EBS一切,完全忘记S3,这似乎是更有意义。

So, my question is, is this even necessary? Can anyone point me to some uptime statistics between S3 and EC2? Does it ever happen that S3 is down, but EC2 is available? It seems like it might be simpler to just upload everything directly to S3 and trust that it is up.... On the other hand, we could just store everything in EBS and forget S3 completely, which seems like it makes more sense.

推荐答案

它更可能是您的EC2实例将下降比S3会有所回落。首先,你必须在一个可用性区域的单个网络连接,一台主机上运行的单个实例。过去认为,在一个平台上水平,EC2(特别是涉及EBS)有过的若干 长期 <一href="http://arstechnica.com/information-technology/2012/10/amazon-web-services-outage-once-again-shows-reality-behind-the-cloud/"相对=nofollow>中断的,而S3并没有因为2008年有显著可用性的事件。

It's much more likely that your EC2 instance will be down than S3 will be down. For one, you have a single instance running on a single host with a single network connection in a single availability zone. Past that, on a platform level, EC2 (particularly involving EBS) has had several protracted outages, whereas S3 has not had a significant availability event since 2008.

S3是所有在您选择的区域分布式系统S $ P $垫。工作在与最终一致性保证对象级别是坦率比由EBS和EC2,所有这些设计增加额外的一致性保证(以及因此的方式失败)解决的问题简单得多。

S3 is a distributed system spread all across your region of choice. Operating at the object level with eventual consistency guarantees is frankly a lot simpler than the problems addressed by EBS and EC2, all of which add additional consistency guarantees (and thus ways to fail) by design.

我一般做的上传过程把S3作为后备存储 - 上传到S3,直接或通过上传在写通过时尚的EC2实例 - 和接受,如果S3是下跌的话,我不能处理上传。做这种方式引入了其中的应用程序正在运行一个失败模式,但S3不大,但它显著减少了数据丢失,这通常是不可用比一个更严重的问题的潜力。这也可以让你同时处理,通过在不同的可用区域不同的EC2实例上传,对冲EC2故障,以及通过实例店内情况下,对冲EBS故障。

I generally make upload processes treat S3 as a backing store -- upload to S3 directly, or upload via an EC2 instance in a write-through fashion -- and accept that if S3 is down, then I can't handle uploads. Doing it this way introduces a failure mode where your app is running but S3 is not, but it significantly reduces the potential for data loss, which is usually a more serious problem than unavailability. This also allows you to simultaneously handle uploads via different EC2 instances in different availability zones, hedging against EC2 failures, as well as via instance-store instances, hedging against EBS failures.

这篇关于是Amazon S3 EC2以往任何时候都无法独立?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆