使用 golang 调用consul api 接口,注册user-tomcat服务
1,關于consul
dubbo的注冊中心是zookeeper,redis。?
motan的注冊中心是zookeeper,consul。?
kubernetes的注冊中心是 etcd。?
使用consul的好處是服務發(fā)現(xiàn)啥的都支持了。?
可以使用域名進行負載均衡。?
也是一個不錯的 Server-Side Discovery Pattern 。
2,啟動consul服務,調(diào)用接口
首先要在服務器安裝一個consul服務:?
http://blog.csdn.net/freewebsys/article/details/56296013?
然后下載go的客戶端。?
go get github.com/hashicorp/consul?
然后就可以使用 consul api服務了。
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
代碼很簡單,創(chuàng)建了一個consul的服務,說明tomcat的服務端口,ip。并且聲明了一個check方法用來檢查服務是否可用。
可以通過ui界面觀察服務注冊情況:?
服務可用。?
check失敗服務不可用。
3,使用dig命令檢查服務
yum install bind-utils
- 1
在服務器上面直接查看user-tomcat 服務情況:
# dig @10.0.2.15 -p 8600 user-tomcat.service.consul SRV; <<>> DiG 9.9.4-RedHat-9.9.4-38.el7_3.2 <<>> @10.0.2.15 -p 8600 user-tomcat.service.consul SRV ; (1 server found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 17543 ;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; WARNING: recursion requested but not available;; QUESTION SECTION: ;user-tomcat.service.consul. IN SRV;; ANSWER SECTION: user-tomcat.service.consul. 0 IN SRV 1 1 8080 consul-dev.node.dc1.consul.;; ADDITIONAL SECTION: consul-dev.node.dc1.consul. 0 IN A 127.0.0.1;; Query time: 0 msec ;; SERVER: 10.0.2.15#8600(10.0.2.15) ;; WHEN: Sun Mar 05 03:06:06 EST 2017 ;; MSG SIZE rcvd: 100- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
consul-dev.node.dc1.consul. 0 IN A 127.0.0.1?
可以查詢到一個域名節(jié)點。
4,總結(jié)
本文的原文連接是:?http://blog.csdn.net/freewebsys/article/details/60466381?
未經(jīng)博主允許不得轉(zhuǎn)載。?
博主地址是:http://blog.csdn.net/freewebsys
總體上感覺 consul 還是非常簡單實用的。?
在做 Server-side Discovery 的時候是非常的方便的。?
可以降低client的代碼邏輯。
總結(jié)
以上是生活随笔為你收集整理的使用 golang 调用consul api 接口,注册user-tomcat服务的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 用Nginx+Lua(OpenResty
- 下一篇: 【Consul】Consul实践指导-健