Spring Cloud 负载均衡器中基于部署上下文的 Vip 地址

问题描述

我们希望迁移到 Spring Cloud Load Balancer 以取代 Ribbon。我们使用 Eureka 进行服务发现和注册。

看起来从 Spring Cloud Netflix 3.x 开始,Eureka 客户端模块中的 EurekaRibbonClientConfiguration 已被删除。

我们使用 deploymentContextBasedVipAddress 配置将我们的内部主机名映射到 Eureka 中注册的 vip 地址。

配置类似:

some-sevice-v1.ribbon.NIWSServerListClassName=com.netflix.niws.loadbalancer.DiscoveryEnabledNIWSServerList
some-sevice-v1.ribbon.DeploymentContextBasedVipAddresses=some_service-v1
some-sevice-v1.ribbon.NIWSServerListFilterClassName=com.netflix.loadbalancer.ServerListSubsetFilter

我们这样做是因为在 Eureka 注册的 vip 地址中包含一个 _,这在技术上对于主机名来说是一个无效字符; Java URI 类将无法解析包含 _ 的主机。我们目前无法更改此设置。

所以我的问题是;这个类似的配置可以用 Spring Cloud Load Balancer 和 Spring Cloud Netflix 3.x 中新的 Eureka 客户端模块来完成吗,我们可以为 vip 地址提供别名?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)