Amazon-elb是一种可伸缩性解决scheme,它像我的amazon ec2服务器的多个实例一样工作。 我想知道用roundrobin DNS将我的名字parsing成别名列表是不是更有效:machine1.myaccount.amazon.com,machine2.myaccount.amazon.com,等等。
为什么我应该使用amazon-elb,如果我可以configuration多个服务器并通过networking/ dns级别而不是使用代理/应用程序级别来实现可扩展性?
ELB将处理从DNS和SSLterminal(如果需要)添加/删除服务器的维护。 循环赛dns是穷人的负载平衡器,它大部分时间都会工作。 这里有一个关于“浏览器重试”的好文章。 http://bit.ly/rhrzuh
如果您正在寻找高可用性解决scheme,那么在2个不同的可用区域中有2个nginx / haproxy服务器是一个开始。 你可以在微型实例上运行这些实例,只要你没有从它们提供静态数据(nginx)。
如果您想要HA和性能的组合,请运行2个nginx / haproxy服务器,并从nginx服务器提供您的静态资产。
DNS轮循机制仍然不被100%的networking所支持,尽pipe可能是这样,DNS也被某些ISP大量caching,所以更新DNS可能不会在几天内带来新的服务器。 ELB提供了即时扩展,粘性会话,HTTPS卸载等function。虽然可能不是ELB,但您应该在应用程序服务器之前使用某种负载平衡代理。 在我们的一些使用EC2 / AWS的项目中,我们使用了专用的NGINX实例,而不是ELB,这给了我们更多的控制,而且更便宜。 如果您的问题更为通用,而不是针对AWS的特定情况,那么您可能会得到更好的答案。