- naming 服务注册
- Discovery 服务发现
- etcd
其他注册发现服务consul
etcd
etcd是一个Go语言编写的分布式、高可用的一致性键值存储系统,用于提供可靠的分布式键值(key-value)存储、配置共享和服务发现等功能
相关资料
Discovery
安装 Discovery
cd $GOPATH/src
git clone https://github.com/bilibili/discovery.git
cd discovery/cmd/discovery
go build
discovery.exe -conf discovery.toml
创建kratos项目与配置
kratos new kratos-demo
在cmd\mian.go
文件中添加下面代码
ip := "127.0.0.1"
port := "9000"
hn, _ := os.Hostname()
dis := discovery.New(nil)
ins := &naming.Instance{
Zone: env.Zone,
Env: env.DeployEnv,
AppID: "demo.service",
Hostname: hn,
Addrs: []string{
"grpc://" + ip + ":" + port,
},
}
如何是cmd启动的话执行命令 set DISCOVERY_NODES=127.0.0.1:7171
如何是goland配置如下
获取注册实例
访问地址: http://127.0.0.1:7171/discovery/fetch?env=dev&appid=demo.service&status=1