В настоящее время я использую Spring Boot Services с Discovery First.Запуск сервисов один за другим работает просто отлично, но у меня возникают проблемы с одновременным запуском сервисов через docker-compose.
Кажется, что первый загрузчик обнаружения не работает, как я ожидал.Я бы предположил, что служба будет останавливаться / повторяться, пока он не получит конфигурацию от службы конфигурации, которая была обнаружена через eureka.Но в настоящее время он попытается разрешить конфигурацию один раз, а затем служба запустится сразу после - независимо от того, была ли конфигурация введена или нет.
Начальная загрузка службы выглядит следующим образом:
spring:
application:
name: my-service
cloud:
config:
fail-fast: false
discovery:
enabled: true
service-id: configserver
retry:
initialInterval: 2000
multiplier: 1.5
maxInterval: 60000
maxAttempts: 10
server:
port: ${APPLICATION_PORT:16000}
eureka:
client:
serviceUrl:
defaultZone: http://${EUREKA_HOSTNAME:localhost}:15000/eureka/
Конфигурация eureka выглядит следующим образом:
spring:
application:
name: manager
server:
port: 15000
eureka:
client:
registerWithEureka: true
fetchRegistry: false
serviceUrl:
defaultZone: http://${EUREKA_HOSTNAME:localhost}:15000/eureka/
Последнее, но не менее важное - конфигурация configserver выглядит следующим образом:
spring:
application:
name: configserver
cloud:
config:
fail-fast: true
server:
port: 15001
eureka:
client:
serviceUrl:
defaultZone: http://${EUREKA_HOSTNAME:localhost}:15000/eureka/
Кто-нибудь может дать здесь какой-нибудь совет?