天天看点

grpc(4):使用 golang 调用consul api 接口,注册user-tomcat服务1,关于consul2,启动consul服务,调用接口3,使用dig命令检查服务4,总结

dubbo的注册中心是zookeeper,redis。

motan的注册中心是zookeeper,consul。

kubernetes的注册中心是 etcd。

使用consul的好处是服务发现啥的都支持了。

可以使用域名进行负载均衡。

也是一个不错的 server-side discovery pattern 。

grpc(4):使用 golang 调用consul api 接口,注册user-tomcat服务1,关于consul2,启动consul服务,调用接口3,使用dig命令检查服务4,总结

首先要在服务器安装一个consul服务:

<a href="http://blog.csdn.net/freewebsys/article/details/56296013">http://blog.csdn.net/freewebsys/article/details/56296013</a>

然后下载go的客户端。

go get github.com/hashicorp/consul

然后就可以使用 consul api服务了。

代码很简单,创建了一个consul的服务,说明tomcat的服务端口,ip。并且声明了一个check方法用来检查服务是否可用。

可以通过ui界面观察服务注册情况:

grpc(4):使用 golang 调用consul api 接口,注册user-tomcat服务1,关于consul2,启动consul服务,调用接口3,使用dig命令检查服务4,总结

服务可用。

grpc(4):使用 golang 调用consul api 接口,注册user-tomcat服务1,关于consul2,启动consul服务,调用接口3,使用dig命令检查服务4,总结

check失败服务不可用。

在服务器上面直接查看user-tomcat 服务情况:

consul-dev.node.dc1.consul. 0 in a 127.0.0.1

可以查询到一个域名节点。

未经博主允许不得转载。

总体上感觉 consul 还是非常简单实用的。

在做 server-side discovery 的时候是非常的方便的。

可以降低client的代码逻辑。

继续阅读