现在使用consul做了注册中心,想问下如果对于集群注册中心,有没有现成的框架可以直接使用的,网上好多的例子都是注册到单机上的,想求一个类似于spring boot 里面注册到eureka集群里面直接写多个地址就行了,go语言中有没有这样的开源项目啊?
有疑问加站长微信联系(非本文作者)

现在使用consul做了注册中心,想问下如果对于集群注册中心,有没有现成的框架可以直接使用的,网上好多的例子都是注册到单机上的,想求一个类似于spring boot 里面注册到eureka集群里面直接写多个地址就行了,go语言中有没有这样的开源项目啊?
有疑问加站长微信联系(非本文作者)
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
`单行代码`
consul本来就是支持集群的, 而且k8s可以开启多个consul副本.
1楼 @kuangyuansheng 嗯,我明白consul可以做集群。比如说现在有2个consul server 叫做serverA,serverB,两个consul client,client A,client B,现在我有一个微服务叫user,还有一个微服务叫order ,他们都要注册到consul集群中,我使用的是微服务主动注册的方式. 网上一般的例子都是这样的:
但是这样的例子服务职能注册固定的consul 的client ,万一服务注册的时候这个consul client挂了就会导致注册不上去,这里可以写多个地址,就像springboot 里面eureka当注册中心的时候,直接写多个注册中心的地址,如果一个不可用他可以去另外的一个注册中心进行注册
一般注册中心只有一个域名或ip对外, 注册中心可以用nginx反向代理或者是k8s做集群,
确保注册成功有两个方法, 1 supervisor守护consul进程 2 k8s开启N个consul的pod, 用探针确保k8s指向正常工作的consul.
而且你的client也要有retry机制
@kuangyuansheng 嗯,明白了,多谢指导