zoukankan      html  css  js  c++  java
  • 注册中心(Consul)

    1.什么是Consul?

    Consul是HashiCorp公司推出的开源工具, 用于实现分布式系统的服务发现与配置.与其他分布式服务注册与发现的方案相比, Consul的方案更“一站式”, 内置了服务注册与发现框架、分布一致性协议实现、健康检查、Key/Valu c存储、多数据中心方案, 不再需要依赖其他工具(比如ZooKeeper等) .使用起来也较为简单.Consul使用Go语言编写, 因此具有天然可移植性(支持Linux、Windows和MacOSX) :安装包仅包含一个可执行文件,方便部署, 与Docker等轻量级容器可无缝配合。

    2.Consul安装

    https://www.consul.io/downloads.html

    下载完成后解压,打开CMD终端,进入consul.exe所在目录,执行如下命令启动Consul服务。

    #进入consul.exe所在目录
    cd 你的目录
    #启动服务,-dev表示开发模式运行,另外还有-server表示服务模式运行
    consul agent –dev

    启动成功后访问localhost:8500,查看是否启动成功

    3.monitor改造

    改造mango-monitor工程,作为服务注册到注册中心。

    3.1 添加依赖

    在pom.xml中添加Spring Cloud和Consul注册中心依赖。

    注意:Spring Boot2.1后的版本会出现Consul服务注册上的问题,可能是因为配置变更或者支持方式发生改变,由于版本太新,网上也没有相关解决方案,所以这里吧spring Boot版本调整为2.0.4,Spring Cloud版本使用最新的稳定发布版Finchley.RELEASE。

    <!--consul-->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-consul-discovery</artifactId>
            </dependency>
    
    <!--srping cloud-->
        <dependencyManagement>
            <dependencies>
                <dependency>
                    <groupId>org.springframework.cloud</groupId>
                    <artifactId>spring-cloud-dependencies</artifactId>
                    <version>Finchley.RELEASE</version>
                    <type>pom</type>
                    <scope>import</scope>
                </dependency>
            </dependencies>
        </dependencyManagement>

    3.2 配置文件

    server.port=8000
    spring.application.name=mango-monitor
    
    spring.cloud.consul.host=localhost
    spring.cloud.consul.port=8500
    #注册到consul的服务名称
    spring.cloud.consul.discovery.service-name=${spring.application.name}

    3.3 修改启动类

    添加@EnableDiscoveryClient

    3.4 测试效果

    启动服务监控服务器,访问localhost:8500,发现服务已经成功注册到注册中心。



    1

  • 相关阅读:
    Visual Studio 2017 Bugs
    【翻译】7种流行的单元测试命名约定
    Markdown语法
    How to build mscorlib.dll with visual studio
    Debugging
    [HDU 1020] Encoding
    [HDU 1008] Elevator
    Python学习笔记七-错误和异常
    Python学习笔记六--文件和输入输出
    Python学习笔记五--条件和循环
  • 原文地址:https://www.cnblogs.com/xc-xinxue/p/12517627.html
Copyright © 2011-2022 走看看