2016-02-16 2 views
0

Я стремлюсь к очень простой облачной архитектуре на Amazon AWS. Я хотел бы иметь слой приложения из нескольких «эластичных» экземпляров EC2, где запускается мое приложение (и серверы приложений), но мне интересно, как будет выглядеть балансировка нагрузки.Устраняет ли EC2 Elastic Load Balancer необходимость в apache/nginx?

Если я предпочитаю использовать ELB, он устраняет необходимость в Apache или Nginx?

+0

Почему downvotes? –

+1

Я тоже не поклонник нисходящего потока - мне нравится знать, почему возникает проблема. Несмотря на то, что AWS становится довольно распространенным инструментом разработки, некоторые люди хардкорны о сохранении сервера или системы, связанных с ServerFault или другими сайтами, если никакой код вообще не задействован. Я предполагаю, что это может быть проблемой. Я всегда думал, что система разделения разделов развития/администрирования/etc на отдельные сайты будет немного преувеличена и контрпродуктивна, но я узнал рациональное из ее сторонников - они действительны, даже если я не согласны. – Ray

+0

Спасибо за понимание, Рэй. Линии, конечно, немного расплывчаты, но по крайней мере теперь у меня есть хорошая идея, почему люди, возможно, взяли вопрос. Cheers –

ответ

3

№. Все, что делает loadbalancer, это то, что распределяет нагрузку между экземплярами. Независимо от того, какой ваш стек работает на каждом экземпляре, все равно потребуется nginx или apache или какая-либо другая служба, на которую вы хотите ответить, на запрос, направляемый через балансировщик нагрузки.

Я предполагаю, что вы используете веб-стек, требующий какого-то типа сервера, такого как nginx, apache или java, нуждающийся в tomcat или что-то в этом роде.

Однако, если вы хотите AWS заботиться о Nginx и/или Apache, смотрите в работе в качестве приложения ElasticBeanstalk: https://aws.amazon.com/elasticbeanstalk/

+0

Спасибо за ваш ответ. Правильно, tomcat необходим на «слое приложения». Не было бы плохой практикой, если бы nginx работал на каждом экземпляре слоя приложения? Кажется, учитывая то, что вы мне сказали, возможно, я должен использовать nginx (вместо ELB) в качестве верхнего слоя, чтобы он мог обрабатывать запрос и действовать как балансировщик нагрузки, выбирая один уровень сложности из уравнения? –

+0

@BrianFitzGerald нет, если вы хотите распределить нагрузку через несколько экземпляров ec2, используйте ELB. – Ray

+0

@BrianFitzGerald Рассматривайте каждый экземпляр за балансировщиком нагрузки как свой собственный стек. Если вам не нужна маршрутизация базы данных, проксирование и переписывание nginx/apache (вы используете только tomcat, и ничего больше), вы можете оставить его. – Ray

Смежные вопросы