如何解决Micronaut Consul 客户端和重试支持
从 Consul 加载配置时,Micronaut 中的 discovery Client 是否支持重试模式?
我在文档中找不到示例:https://docs.micronaut.io/latest/guide/#distributedConfiguration 或项目源。 唯一支持重试的组件是 Micronaut Consul Service discovery。
然而,当 Consul Config 需要重试时,有一些用例。而 Spring Cloud Consul 从一开始就支持它。 因此,如果它本身不受支持,是否有任何方法可以提供自定义的用户定义解决方案?
谢谢, 谢尔盖
解决方法
不是开箱即用的,但自定义起来很简单,因为 ConsulConfigurationClient
使用了另一个 bean 的 ConsulClient
实现。
您可以使用以下内容替换此 bean 以应用适合您的任何重试策略:
@Client(id = ConsulClient.SERVICE_ID,path = "/v1",configuration = ConsulConfiguration.class)
@Requires(beans = ConsulConfiguration.class)
@BootstrapContextCompatible
@Replaces(AbstractConsulClient.class)
@Retryable(attempts = "5",delay = "1s")
abstract class MyConsulClient extends AbstractConsulClient {
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。