

因為新版Micro工具已經棄用了consul,加入了etcd的支持,所以我們把服務注冊放入到etcd中
package main
import (
"github.com/micro/go-micro"
"github.com/micro/go-micro/registry"
"github.com/micro/go-micro/registry/etcd"
"micro/Services"
"micro/ServicesImpl"
)
func main() {
//consulReg := consul.NewRegistry(registry.Addrs("localhost:8500"))
etcdReg := etcd.NewRegistry(registry.Addrs("106.12.72.181:23791")) //注冊服務到etcd中
myservice := micro.NewService(
micro.Name("test.xiahualou"+".com"),
micro.Address(":8001"),
micro.Registry(etcdReg),
)
Services.RegisterTestServiceHandler(myservice.Server(), new(ServicesImpl.TestService))
myservice.Run()
}
使用micro工具查看服務和調用服務
1.查看服務
micro --registry=etcd --registry_address=106.12.72.181:23791 list services

2.獲取服務
micro --registry=etcd --registry_address=106.12.72.181:23791 get service test.xiahualou.com

3.調用服務
micro --registry=etcd --registry_address=106.12.72.181:23791 call test.xiahualou.com TestService.Call "{\"id\":3}"
# 調用的時候必須要加上Endpoint,傳入的json參數key要用雙引號括起來,反引號轉義
使用micro工具的Dashboard
micro --registry=etcd --registry_address=106.12.72.181:23791 web
下圖是service在micro的dashboard中查看到的詳細信息

