Spring-Vault 库是否支持 Feign 客户端,或者是否有任何方法可以通过假装路由调用



这个想法是让spring-vault使用假客户端(以利用hystrix的容错功能(。

  1. spring-vault 是否支持假装客户端? 或者如果没有开箱即用的支持,是否有解决方法
  2. 或者是否有通过假客户端(一种代理模式(路由弹簧保险库调用。

以下代码片段是 spring-vault 配置的示例;VaultTemplate bean 用于 vault 操作

public VaultEndpoint vaultEndpoint() {
    try {
        return VaultEndpoint.from(new URI(vaultUri));
    } catch (URISyntaxException uriSyntaxException) {
        throw new IllegalStateException("Some Exception", uriSyntaxException);
    }
}
@Bean
public VaultTemplate vaultTemplate() {
    return new VaultTemplate(vaultEndpoint(), httpRequestFactory(), sessionManager());
}
@Bean
public VaultTransitOperations vaultTransitOperations() {
    return vaultTemplate().opsForTransit(transitPath);
}
@Bean
public ClientHttpRequestFactory httpRequestFactory() {
    ClientOptions clientOptions = new ClientOptions(1000, 1000);
    return ClientHttpRequestFactoryFactory.create(clientOptions, SslConfiguration.NONE);
}
@Bean
public RestOperations vaultClient() {
    return VaultClients.createRestTemplate(vaultEndpoint(), httpRequestFactory());
}

Spring Vault 中没有假装(openfeign(支持,但我们通过接受ClientHttpRequestFactory来支持各种 HTTP 客户端。

您可以通过使用 Spring Cloud Netflix 提供RibbonClientHttpRequestFactory来获得功能区的容错能力。

相关内容

  • 没有找到相关文章

最新更新