Как интегрировать AWS + ELB + AutoScale + Docker + Spring Cloud - PullRequest
0 голосов
/ 30 сентября 2018

Я хочу разработать приложение, используя AWS в качестве IAAS, Docker в качестве PAAS и Spring Boot и Spring cloud в качестве технологии приложения.

Для этого я погуглил, прочитал много блогов и посмотрел видео, но не смог найти ответа на этот вопрос.

Я разработал одно приложение с использованием облачной технологии Spring Boot и Spring, и архитектура приложения выглядит следующим образом.

enter image description here

Этот дизайнвыглядит хорошо и работает нормально, как и ожидалось.Теперь новая задача заключается в том, что мне нужно использовать облако (AWS) в качестве инфраструктуры и Docker.Для этого я разработал еще одну архитектуру, которая выглядит следующим образом:

enter image description here

Компонент выглядит следующим образом:

ELB -(Elastic Load Balancer) -> Целевая группа (часть автоматического масштабирования) -> Экземпляр EC2 (будет создаваться больше по требованию)

Теперь, если я хочу интегрировать свой предыдущий дизайн, я думаю, что в этом нет необходимостиСервер Zuul здесь, потому что это распределение нагрузки выполняется ELB, второй компонент, который мне не нужен, также не требуется, так как это будет сделано группой Target AutoScale.

Я немного запутался здесь с Spring Cloud и инфраструктурой AWS.

Может ли кто-нибудь помочь мне сделать очень просто, как я могу интегрировать эти компоненты для совместной работы?

Спасибо

1 Ответ

0 голосов
/ 02 октября 2018

Почему Spring Cloud с AWS?

Давайте рассмотрим пример, когда вам нужно Spring Cloud, даже если ваша архитектура развернута на инфраструктуре AWS:

Представьте, что вашей службе продукта требуется связь с вашей службой заказов.в этом случае вы увидите утилиту Spring Cloud.

Вы не видите необходимости в Spring Cloud, потому что у вас нет внутренней связи (между вашими службами), и это роль службы реестра.

Почему служба шлюза (Zuul в вашей архитектуре)?

Опять же, ваша текущая архитектура не использует (не требует) мощного шаблона шлюза.

Предположим, что вашей системе нужно объединить несколько результатов от разных сервисов для ответа на запрос клиента.Вы можете сделать это в Gateway (Zuul в вашем случае).

Еще одно преимущество использования службы Gateway заключается в том, что вы можете использовать ее в качестве единого входа в вашу систему, что позволяет использовать браузер, мобильное приложение или другой пользовательский интерфейс.использовать сервисы с нескольких хостов без управления совместным использованием ресурсов между источниками (CORS) и аутентификацией для каждого из них.

Важно:

Хорошо не использовать Spring Cloud, это не правило или THEправильный способ реализации архитектуры микросервисов.Если вам это не нужно, не используйте его.

...