-1

Amazon-elb is a scalability solution that works like a proxy to several instances of my amazon ec2 servers. I wonder if it would'nt be more effective to have a roundrobin DNS to resolve my name into a list of aliases: machine1.myaccount.amazon.com, machine2.myaccount.amazon.com, and so on.

Why should I use amazon-elb, if I can configure multiple servers and make the scalability by the network/dns level instead of using proxy/application level?

Smudge
  • 24,039
  • 15
  • 57
  • 76

2 Answers2

2

DNS round robin still isn't supported by 100% of networks, suprising as it may be, also DNS is cached heavily by some ISPs so updating your DNS might not bring in a new server for days. ELB provides features like instant scaling, sticky sessions, HTTPS offloading etc. While maybe not ELB, you should definately be using some sort of load balancing proxy in front of your application servers. On some of our projects using EC2/AWS we use dedicated NGINX instances rather than ELB, it gave us more control and was cheaper. You could probably have got better answers if your question was more generic rather than specific for AWS.

Smudge
  • 24,039
  • 15
  • 57
  • 76
2

ELB will handle the maintenance of adding/removing a server from dns and SSL termination (if needed). Round robin dns is the poor mans load balancer, it will work most of the time. Here's a good article on "browser retry". http://bit.ly/rhrzuh

If you are looking for a high availability solution then having 2 nginx/haproxy servers in 2 different availability zones is a start. You can run these on micro instances , as long as your are not serving static data from them (nginx).

If you want a combination of HA and performance, then run 2 nginx/haproxy servers and serve your static assets from the nginx servers.

Edwin
  • 321
  • 1
  • 3