spring cloud consul的坑记录,相同服务注册被覆盖的问题和hostname的问题。

相同服务注册被覆盖的问题的原因:根据查看相关源码,服务的注册最终是以instance-id 来确定服务的,就是相同服务的instance-id需要区分开来。

解决办法:

配置文件中添加:spring.cloud.consul.discovery.instance-id:${spring.application.name}:${spring.cloud.client.ip-address}

注意这里的第一个参数需要在配置文件中写上,第二个参数不需要直接就可以使用。

hostname问题带来的问题:spring.cloud.consul.discovery.hostname:xxx.xxx.xxx.xxx 如果写了的话 就是以这个ip地址注册到consul上面,这个地址就是该服务运行的服务器的地址,这里很不方便,因为你换一个服务器运行 就需要去修改一次。可以直接使用spring.cloud.consul.discovery.prefer-ip-address:true 替换掉上面的hostname。这样就强制使用ip注册到consul服务器上面。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值