Amazon-elb - это масштабируемое решение, которое работает как прокси-сервер для нескольких экземпляров моих серверов amazon ec2. Интересно, не было бы более эффективным иметь DNS с круговым анализом для преобразования моего имени в список псевдонимов: machine1.myaccount.amazon.com, machine2.myaccount.amazon.com и так далее.
Зачем мне использовать amazon-elb, если я могу настроить несколько серверов и обеспечить масштабируемость на уровне сети / DNS вместо использования уровня прокси / приложения?
Циклический перебор DNS по-прежнему не поддерживается в 100% сетей, как ни удивительно, но некоторые интернет-провайдеры также сильно кэшируют DNS, поэтому обновление вашего DNS может не привести к появлению нового сервера в течение нескольких дней. ELB предоставляет такие функции, как мгновенное масштабирование, липкие сеансы, разгрузка HTTPS и т. Д. Хотя, возможно, это и не ELB, вам определенно следует использовать какой-то прокси для балансировки нагрузки перед вашими серверами приложений. В некоторых наших проектах, использующих EC2 / AWS, мы используем выделенные инстансы NGINX, а не ELB, это дало нам больше контроля и было дешевле. Вероятно, вы могли бы получить лучшие ответы, если бы ваш вопрос был более общим, чем конкретным для AWS.
ELB будет поддерживать добавление / удаление сервера из DNS и завершения SSL (при необходимости). Round robin dns - это плохой балансировщик нагрузки, он будет работать большую часть времени. Вот хорошая статья о "повторной попытке браузера". http://bit.ly/rhrzuh
Если вы ищете решение с высокой доступностью, то наличие 2 серверов nginx / haproxy в 2 разных зонах доступности - это начало. Вы можете запускать их на микро-экземплярах, если вы не используете статические данные с них (nginx).
Если вам нужна комбинация высокой доступности и производительности, запустите 2 сервера nginx / haproxy и обслуживайте свои статические ресурсы с серверов nginx.