1.使用go mod init 名称 创建项目
2.执行下面方法
使用go-micro框架:
go get github.com/micro/go-micro/v2
protobuf生成工具:
go get github.com/golang/protobuf/protoc-gen-go
go-micro自己的生成工具: (和go-micro框架一致都是V2版本)
go get github.com/micro/protoc-gen-micro/v2
安装Micro工具(也需要V2版本)
go get github.com/micro/micro/v2
还需要一个protoc.exe,windows平台编译受限,很难自己手动编译,直接去网站下载一个,地址:
https://github.com/protocolbuffers/protobuf/releases/tag/v3.9.0(将proto文件生成为对应语言文件的编译器,
根据自己系统下载对应的版本),同样放在GOPATH/bin下
3.下载etcd
https://github.com/etcd-io/etcd/releases
(根据自己系统下载对应的版本,解压文件可以放在任何地方)
启用etcd; 双击etcd.exe (etcd.exe是服务端程序,etcdctl.exe为客户端程序)
错误注意情况:
1.使用micro api (网关) 提示service not found
代码里面是api.test.com.user
网关错误配置:
访问提示
网关正确的配置
namespace和type配置加起来为代码里面的api.test.com 要与代码里面一致
micro --registry=etcd --registry_address=127.0.0.1:2379 api --namespace=api.test --type=com
使用api访问
http://{host}:{post}/{serverName}/{apiName}/{methodName}
域名中的user对应代码中api.test.com.user的user
http://localhost:8080/user/serService/test