我有一个 Spring-Boot 应用程序(Netflix Eureka),它应该连接到 rabbitMQ 以提供 logstash 的日志。如果 RabbitMQ 存在,一切都可以正常工作,但如果服务器不可用,它会每毫秒向 rabbitMQ 发送超过 20 个请求。
这是我的依赖项:
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+
编辑:我正在玩这个,发现它在从云配置访问配置时也是如此。在将配置加载到错误的目的地之前,它会发送大量请求。由于大量请求,RAM 负载很重。