安装指南

依赖

我们需要一个发现服务器, 这里micro默认使用的Consul,checkoutgo-pluginsto swap it out.

我们这里用之前安装部署好的consul,用来做go的micro服务发现

启动consul

consul agent -dev -enable-script-checks  -bind 101.200.170.171 -config-dir ./consul.d/ -client 101.200.170.171

当然也要保证我们的环境支持profobuf

下载micro

go get github.com/micro/micro

尝试运行

我们运行micro给我们默认提供的greeter服务

go get github.com/micro/examples/greeter/srv
go run srv/main.go --registry_address "101.200.170.171:8500"

结果如下:

2017/12/21 14:47:07 Listening on [::]:59340
2017/12/21 14:47:07 Broker Listening on [::]:45885
2017/12/21 14:47:07 Registering node: go.micro.srv.greeter-c34915c7-e61a-11e7-ba2e-00163e004c84

我们打开consul web ui 发现刚刚启动的go.micro.srv.greeter微服务已经被consul发现,并监控。

利用micro工具

  • 列出全部微服务
$micro  --registry_address "101.200.170.171:8500" list services
consul
go.micro.srv.greeter
iHome_name
mysql_name
redis_name
  • 获取某个服务的信息
micro  --registry_address "101.200.170.171:8500" get service go.micro.srv.greeter
service  go.micro.srv.greeter

version 1.0.0

Id    Address    Port    Metadata
go.micro.srv.greeter-c34915c7-e61a-11e7-ba2e-00163e004c84    10.44.58.172    59340    transport=http,broker=http,server=rpc,registry=consul

Endpoint: Say.Hello
Metadata: stream=false

Request: {
    name string
}

Response: {
    msg string
}

询问微服务

按照Request和 EndPoint

$ micro -registry_address "101.200.170.171:8500" query go.micro.srv.greeter Say.Hello '{"name": "John"}'
{
    "msg": "Hello John"
}

了解更多,请查看

github.com/micro/micro

results matching ""

    No results matching ""