Все ваши сервисы будут находиться в одном и том же регионе AWS, поэтому, даже если они будут общаться друг с другом через HTTP, это будет ОЧЕНЬ БЫСТРО.

сно этому ответуhttps://stackoverflow.com/a/41811770/2849613 Я хотел бы получить немного больше информации о лучших методах работы с микросервисами на Heroku.

Вопрос в том, какой подход лучше?

Установить все сервисы как независимое приложение и использовать один из них в качестве REST-прокси (например, Netflix Eureka)?

Или же

Создать подход, основанный на докере, например Netflix Zuul в качестве балансировщика нагрузки?

Я уже вижу некоторые плюсы и минусы обоих подходов:

Pros: лучшая масштабируемость (легко создавать новые машины для большей нагрузки).Cons: связь между сервисами идет "вне геройки", другими словами: потому что приложение heroku имеет публичный адрес, каждый может подключиться напрямую к сервису (не бросая Eureka), из-за этого каждому сервису нужно предоставить какой-то метод аутентификации и поделиться им между собой - Я думаю, что это подвержено риску.

Pros: легко воспроизводить производственную среду для тестирования и разработки (образ докера), связь между сервисами осуществляется «внутри» (изображение в изображение вместо приложения в приложение).Cons: трудно масштабировать (я думаю, что балансировка нагрузки между приложениями Heroku, а затем и образами докеров немного перегружена).

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

Будьте честны, единственное, в чем я уверен, это то, что я хочу использовать rabbitMQ в качестве очереди сообщений ...

Ответы на вопрос(1)

Ваш ответ на вопрос