Golang – 微服务GRPC使用Consul进行服务注册与发现

【 MAC安装protobuf 和 protoc-gen-go 】
1. 如果你的mac没有安装homebrew的话需要安装先

https://brew.sh/

2. 使用brew安装protobuf

brew install protobuf

3.在GRPC网站当中安装这两个插件

https://grpc.io/docs/languages/go/quickstart/

【 使用Docker Desktop开启consul 】

  1. 运行以下的docker指令
docker run --name consul1 -d -p 8500:8500 -p 8300:8300 -p 8301:8301 -p 8302:8302 -p 8600:8600 hashicorp/consul agent -server -bootstrap-expect=1 -ui -bind=0.0.0.0 -client=0.0.0.0

2. 以下的url是打开本地consul查看服务的情况

http://127.0.0.1:8500/

【 Golang代码 启动service和client 】

参考代码:https://github.com/rudian/golearn_consul_microservices

P/S : 可以参考我的代码,我把注册服务与发现给封装进consul package了,里面有注解

  1. 编写proto文件,语法可以参考这个文档
https://go-zero.dev/docs/tasks/dsl/proto

2. 在我的代码当中,是有写了proto文件,目录是 pbfile/hello.proto, 在根目录运行以下的命令

protoc --go_out=./  --go-grpc_out=./ pbfile/hello.proto

3. 运行 service , 在根目录运行以下的命令

go run service.go

4. 运行 client , 在根目录运行以下的命令

go run client.go

参考文章与视频:

https://blog.csdn.net/weixin_38418601/article/details/124901255

https://blog.csdn.net/Peerless__/article/details/133833730

https://www.youtube.com/watch?v=OvVJRCEREto

想要部署上Kubernetes可以参考这里:

https://chatgpt.com/share/89f07ee4-4bcc-4258-ab18-7d04afdebd02

Loading

Facebook评论