关于go-micro中使用consul的一些注意细节

关于go-micro中使用consul的一些注意细节,第1张

概述今天因为配置go-micro中使用consul作为服务发现踩了一天的坑,最后终于成功解决1.安装go-micro(windows)#安装go-microgoget-u-vgithub.com/micro/go-micro#安装工具集goget-u-vgithub.com/micro/micro#安装protobuf插件goget-u-vgithub.com/golang/pro

今天因为配置go-micro中使用consul作为服务发现踩了一天的坑,最后终于成功解决

1.安装go-micro(windows)

# 安装go-microgo get -u -v github.com/micro/go-micro# 安装工具集go get -u -v github.com/micro/micro# 安装protobuf插件go get -u -v github.com/golang/protobuf/{proto,protoc-gen-go}go get -u -v github.com/micro/protoc-gen-micro
2.创建micro服务

因为最新版本的go-micro已经弃用了consul,默认使用etcd做服务注册,所以我们需要额外引入consul

micro new --type srv mserver -- 创建一个微服务项目protoc --proto_path=. --go_out=. --micro_out=. proto/mserver/mserver.proto  -- 编译proto文件## ps如果找不到consul的话就用以下路径	github.com/micro/go-plugins/registry/consul
3.搭建好的go-micro服务的main.go文件
package mainimport (	"github.com/micro/go-micro/util/log"	"github.com/micro/go-micro"	"mserver/handler"	"mserver/subscriber"	"github.com/micro/go-plugins/registry/consul"	mserver "mserver/proto/mserver")func main() {	// 初始化服务发现	consulReg := consul.NewRegistry()	// New Service	service := micro.NewService(		micro.name("go.micro.srv.mserver"),		micro.Registry(consulReg),		micro.Version("latest"),	)	// Initialise service	service.Init()	// Register Handler	mserver.RegisterMserverHandler(service.Server(), new(handler.Mserver))	// Register Struct as Subscriber	micro.RegisterSubscriber("go.micro.srv.mserver", service.Server(), new(subscriber.Mserver))	// Register Function as Subscriber	micro.RegisterSubscriber("go.micro.srv.mserver", service.Server(), subscriber.Handler)	// Run service	if err := service.Run(); err != nil {		log.Fatal(err)	}}
总结

以上是内存溢出为你收集整理的关于go-micro中使用consul的一些注意细节全部内容,希望文章能够帮你解决关于go-micro中使用consul的一些注意细节所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/langs/1241617.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-06
下一篇 2022-06-06

发表评论

登录后才能评论

评论列表(0条)

保存