EC2 服务器,大量微型实例还是更少的大型实例?
我想知道哪个会更好,在 EC2 上托管一个包含许多微型实例的站点,还是更少的大型实例(例如 m1.large)。所有这些都将作为负载均衡器位于一个或几个较大的实例后面。我就说一下我的理解,如果我错了,任何更了解的人都可以补充或纠正我
选择微实例的主要原因是成本。单个微型实例平均将以 0.02 美元/小时的价格提供约 0.35ECU,而一个小型实例将以 0.085 美元/小时的价格提供 1ECU。如果计算 $/ECU/小时,微型实例的成本为 $0.057/ECU/小时,而小型实例的成本为 $0.085/ECU/小时。因此,对于相同的平均计算能力,选择 100 个微实例会比选择 35 个小型实例便宜。
微型实例的主要问题是性能波动更大,但我不确定当您有很多实例时这是否会减少问题。
那么是否有人有此类设置的经验并了解其优点和缺点?我正在尝试选择走哪条路。
PS:关于该主题的文章, http ://huanliu.wordpress.com/2010/09/10/amazon-ec2-micro-instances-deeper-dive/
I was wondering which would be better, to host a site on EC2 with many micro instances, or fewer larger instances such as m1.large. All will sit behind one or a few larger instances as load balancers. I will say what my understanding is, and anybody who knows better can add or correct me if I'm wrong
Main reason for choosing micro instances is cost. A single micro instance on average will give around 0.35ECU for $0.02/hour, while one small instance will give 1ECU for $0.085. If you do the math of $/ECU/hour, a micro instance works out to be $0.057/ECU/hour, whereas for a small instance it's $0.085/ECU/hour. So for the same average computing power, choosing 100 micro instances would be cheaper than 35 small instances.
Main problem with micro instances is more fluctuating performance, but I'm not sure if this will be less of a problem when you have many instances.
So does anybody have experience benching such setups and see the benefits and drawbacks? I'm trying to choose which way to go.
PS: an article on the subject, http://huanliu.wordpress.com/2010/09/10/amazon-ec2-micro-instances-deeper-dive/
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
小心微实例,它们可能会咬你。我们已经在微实例上提供了测试环境。由于它们只是功能测试环境,因此运行顺利。然而,我们碰巧更新了一些应用程序(例如 Jetty 7.5.3),该应用程序存在导致 CPU 使用率升高的已知错误。这使得这些实例毫无用处,因为 Amazon 将可用 CPU 限制到 2%。
此外,微型实例由 EBS 支持。对于高 IO 操作(例如 Cassandra 或类似的。
如果您想省钱,并且您的软件在架构上可以处理中断,您可以选择现货实例。它们通常成本低于-需求的。
如果所有这些对你来说都不是问题,我想说,微实例就是你的出路! :)
Beware of micro-instances, they may bite you. We have out test environment all on micro-instances. Since they are just functional test environment, it works smoothly. However, we happened to have update some application (well, Jetty 7.5.3) that has known bug of spinning higher CPU usage. This rendered those instances useless as Amazon throttles the available CPU to 2%.
Also, micro instances are EBS backed. EBS is not advisable (over instance-store) for high IO operations like the ones require for Cassandra or the likes.
If you want to save money and your software is architected to handle interruptions, you may opt for spot instances. They usually cost less than on-demand ones.
If all these are not a issue to you, I would say, micro-instances is the way to go! :)
我想说:取决于您的应用程序将拥有什么样的架构以及它需要有多可靠:
自动缩放与故障转移概念不同。它适用于
不时进行健康检查,并且延迟很小,因为
通过 http 请求完成(如果选择 https,开销会更大)。
例如,以确保这些突发不会对您的应用程序产生太大影响。
这是我的观点,有经验的人之间的讨论将是一次非常愉快的讨论。
I would say: depends on what kind of architecture your app will have and how reliable it will need to be:
auto-scale which is different of fail-over concept. It works with
health checks from time to time and have its small delay because it
is done via http requests (more overhead if you choose https).
instances, to guarantee those bursts won't affect your app too much.
That's my point of view and it would be a very pleasant discussion between experienced people.