Micro 介绍
官方网站: micro.mu
官方文档: micro.mu/docs
源码仓库: github.com/micro/micro
Micro 是一个工具集合, 通过将微服务架构抽象成一组工具。隐藏了分布式系统的复杂性,为开发人员提供了更简洁的概念。
依赖关系
通常 micro 会依赖两个项目
- consul - 服务发现
- protoc-gen-micro - 代码生成
consul 安装运行:
1 | source: |
protoc-gen-micro 安装:
1 | go get -u -v github.com/micro/protoc-gen-micro |
开发环境
- 开发微服务的框架:
1
go get -u -v github.com/micro/go-micro
- 管理工具:
1
2
3
4source:
go get -u -v github.com/micro/micro
docker:
docker pull microhq/micro
运行示例
- 获取示例源码:
1 | go get -u -v github.com/micro/examples |
运行 greeter 示例服务:
–registry_address=127.0.0.1:8500 用来指定服务发现的地址, 就是上面的 consul 的地址, consul 默认端口是 8500
1
go get github.com/micro/examples/greeter/srv && srv --registry_address=127.0.0.1:8500
通过命令行验证:
获取服务列表
–registry_address=127.0.0.1:8500 用来指定服务发现的地址, 就是上面的 consul 的地址, consul 默认端口是 8500
1 | $ micro --registry_address=127.0.0.1:8500 list services |
获取服务详细信息
1 | $ micro get service go.micro.srv.greeter |
尝试调用服务
1 | $ micro query go.micro.srv.greeter Say.Hello '{"name": "John"}' |