zoukankan      html  css  js  c++  java
  • 第三章 consul服务注册与服务查询

    1、定义一个服务

    https://www.consul.io/docs/agent/services.html

    该方法是服务注册中提供服务的最常用的方法。

    关于服务的定义:服务的属性我们会在后边每出现一个总结一个,最后再做总结。

    2、服务注册

    2.1、创建服务文件所存放的文件夹

    说明:

    • .d做后缀:表示一系列配置文件的存放目录(directory)

    2.2、创建服务并写入上述文件夹中的一个文件

    说明:

    • 一个服务我们会配置为json格式:比如上述的单引号之间的形式
    • 一个服务会写在一个json文件中

    注意:

    • 如果上述文件夹没有权限进行操作,先改变文件夹权限,

    3、服务查询

    先启动consul进程。

    切换屏幕-->

    说明:

    • 根据-config-dir指定根据服务注册的目录中的文件来启动服务。

    两种查询方式:DNSHTTP

    3.1、DNS:

    访问的服务名字:

    • tag.servicename.service.consul  tag和servicename都是创建服务的时候配置的
    • DNS访问的端口是8600

    3.2、HTTP:

    说明:

    • 访问的路径:host:port/版本号/catalog/service/服务名
    • Address:用于指定一个特定service的IP地址,默认情况下,使用的是该service使用的agent。

    4、多个服务注册的情况

    4.1、每一个服务注册到一个文件

    假设现在又创建了一个secondservice服务,我会将该服务写入secondservice.json文件中去,如下:

    使用http去访问:

    说明:按照服务名去访问。

    4.2、多个服务写在同一个json文件中

    说明:

    • 放在services中而不是service里(上边的单文件单服务是放在service里的)
    • 多个服务放在一个数组里边

    使用http去访问:

    说明:按照服务名去访问。

    注意:在实际开发中,微服务数量众多,

    如果每个文件都放在一个文件里,文件会非常多,不好!

    如果所有微服务都放在一个文件里,文件太大,也不好!

    所以,需要二者结合。例如,假设有100个微服务,放在10个json文件中去,每个json文件存放10个服务。

    文章参考自:https://www.consul.io/intro/getting-started/services.html

  • 相关阅读:
    定义一个动态的二维数组?
    学习STL map, STL set之数据结构基础
    CMM
    详细解说STL string
    仔细选择你的容器
    C++字符串类string简析
    流氓软件及反流氓软件的技术分析
    标准C++的类型转换符:static_cast、dynamic_cast、reinterpret_cast和const_cast
    C++资料下载
    unix系统操作命令大全
  • 原文地址:https://www.cnblogs.com/java-zhao/p/5359806.html
Copyright © 2011-2022 走看看