zoukankan      html  css  js  c++  java
  • 4.(服务发现1)获取consul服务列表,selector随机选择

    我们会使用主站api调用商品api

    使用go-micro访问consul获取服务信息

    package main
    
    import (
        "fmt"
        "github.com/micro/go-micro/client/selector"
        "github.com/micro/go-micro/registry"
        "github.com/micro/go-plugins/registry/consul"
        "log"
    )
    
    func main() {
        consulReg := consul.NewRegistry( //新建一个consul注册的地址,也就是我们consul服务启动的机器ip+端口
            registry.Addrs("localhost:8500"),
        )
        getService, err := consulReg.GetService("prodservice") //使用服务名获取服务
        if err != nil {
            log.Fatal(err)
        }
        next := selector.Random(getService) //如果getService有多个服务,随机取一个出来localhost:8080/v1/user,localhost:8081/v1/user
        node, err := next()                 //type Next func() (*registry.Node, error)
        if err != nil {
            log.Fatal()
        }
        fmt.Println(node.Id, node.Address, node.Metadata) //可以看到我们的id address还有metadata
    
    }

    执行结果





  • 相关阅读:
    软件测试大赛决赛简讯
    期末提交作业清单
    4月12日-4月19日任务清单
    20160405
    软件系统设计文档模板
    吐槽
    致我亲爱的学生
    HBase 环境搭建
    Zookeeper 环境搭建
    hive 部署
  • 原文地址:https://www.cnblogs.com/hualou/p/12097256.html
Copyright © 2011-2022 走看看