youngwang12138 / blog-gitalk

0 stars 0 forks source link

使用consul和Fabio做RPC的服务发现 #11

Open youngwang12138 opened 2 years ago

youngwang12138 commented 2 years ago

https://zhongyang.wang/post/1656518400/

前言 Consul 是一个服务网格解决方案,提供具有服务发现、配置和分段功能的全功能控制平面。这些功能中的每一个都可以根据需要单独使用,也可以一起使用来构建完整的service mesh。 安转Consul和Fabio Install Consul Fabio Quickstart 我这里采用本地运行的方式 运行consul 1 ./consul.exe agent -dev web页面地址localhost:8500 运行Fabio 注意此处的端口号及协议类型 1 ./fabio-1.6.0-windows_amd64.exe -proxy.addr ':10000;proto=grpc' web 页面地址http://localhost:9998/ gRPC服务端 golang代码如下,其中要注意的点:1、 registrationInfo.ID 不能重复;2、registrationInfo.Tags 需要有前缀才能被Fabio代理,以及协议要与前面启动Fabio处要对应;3、registrationInfo.Check 需要添加,因为Fabio只对健康检测通过的服务进行监控 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 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 package main import ( "context" "encoding/json" "flag" "fmt" "log" "net" pb "google.