Зарегистрируйте два веб-приложения на Java в Spring Registry
Я хочу зарегистрировать два примера веб-приложений Java в Spring Registry, чтобы оба приложения могли обмениваться данными напрямую. Я не знаю много о программировании.
Здесь я обнаружил код Spring Registry, в котором бэкэнд- приложение Spring регистрируется при развертывании в Cloud Foundry, чтобы любое внешнее приложение Spring, которое пытается получить доступ к бэкенду, могло напрямую обмениваться данными.
Как я могу зарегистрировать простое динамическое веб-приложение на Java для прямой связи между ними без использования сторонних сервисов, таких как RabbitMQ?
1 ответ
Я думаю, что вы неправильно понимаете варианты использования. Реестр Netflix Eureka предназначен для реестра сервисов, который помогает облегчить обмен данными между сервисами.
Предположим, услуга - abc.foo.com
и для этого нужно позвонить в другую службу pqr.foo.com
, Вы не хотите путь для pqr
сервис жестко закодирован в abc
оказание услуг. Hardcoding like - это анти-паттерн для облачных нативных приложений. Подход заключается в том, чтобы иметь обслуживание abc
а также pqr
зарегистрируйтесь в сервисном реестре (эврика, консул и т. д.). Затем во время выполнения, сервис, abc
здесь можно опросить реестр и получить активный экземпляр pqr
обслуживать и вызывать его.
Я полагаю, что для ваших веб-приложений на Java, которые должны вызывать друг друга, все ваши взаимодействия (вызовы служб) выполняются на стороне сервера. В этом случае, используя реестр Eureka, один микросервис легко находит и получает экземпляр другого сервиса и вызывает его. Вам не нужен RabbitMQ для этого.
Я бы порекомендовал посмотреть на проект jHipster. Это проект с открытым исходным кодом. У них есть служба реестра на основе Eureka, служба шлюза, микросервисы и клиентский интерфейс (Node.js).
Это будет хорошей отправной точкой, и есть много доступной помощи с открытым исходным кодом.
Надеюсь, это поможет!