У меня есть приложение Spring-Boot (Netflix Eureka), оно должно подключаться к rabbitMQ для предоставления журналов для logstash.
Если RabbitMQ присутствует, все работает нормально, но если сервер недоступен, он отправляет более 20 запросов к rabbitMQ за мс.
Вот мои зависимости:
dependencies {
compile('org.springframework.boot:spring-boot-starter-actuator')
compile('org.springframework.cloud:spring-cloud-starter-netflix-eureka-server')
compile('org.springframework.cloud:spring-cloud-starter-config')
compile('org.springframework.retry:spring-retry:1.2.2.RELEASE')
compile('org.springframework.boot:spring-boot-starter-aop:2.0.3.RELEASE')
compileOnly('org.projectlombok:lombok')
compile group: 'org.springframework.cloud', name: 'spring-cloud-starter-sleuth', version: '2.1.1.RELEASE'
compile('net.logstash.logback:logstash-logback-encoder:5.2')
compile group: 'org.springframework.boot', name: 'spring-boot-starter-amqp', version: '2.1.5.RELEASE'
testCompile('org.springframework.boot:spring-boot-starter-test')
}
Я уже пытался не использовать пружинный повтор, но это не было решением.
вот моя конфигурация для кролика:
spring:
profiles: prod
rabbitmq:
host: rabbitmq
port: 5672
username: user
password: supersecretpassword
Я хочу уменьшить количество попыток до 1 в секунду.
В настоящее время есть 20+ за миллисекунду
EDIT :
Я поигрался с этим и обнаружил, что он делает то же самое при доступе к конфигурации fron cloud config. Он отправляет тонны запросов до того, как конфигурация будет загружена с неверным адресатом.
В результате массивных запросов в ОЗУ возникает большая нагрузка.