Spring Cloud Consul 服务注册中心

说明

一、安装 Consul

1、下载 Consul 包

  • https://www.consul.io/downloads.html 下载合适的 consul 包。博主这里下载的是 windows 64 位版本: consul_1.4.3_windows_amd64.zip
  • consul_1.4.3_windows_amd64.zip包含一个名为 consul独立的二进制文件。因为博主下载的是 windows 版,所以它是 consul.exe

2、配置环境变量

  • 解压consul_1.4.3_windows_amd64.zip到一个目录,把这个目录配置到 PATH。
  • 配置环境变量是为了可以在任意的位置都可以方便的运行 consul命令
  • 配置环境变量比较简单,这里省略。

3、验证安装

  • 打开一个终端,运行 consul命令,输出内容应该类似:
    • 在这里插入图片描述

二、启动 Consul 代理

1、启动 Consul 代理

2、访问 Consul 代理

三、Spring Cloud Consul 服务注册与发现

1、如何启用(激活)?

  • 官网文档描述:通过引入 spring-cloud-starter-consul-discovery即可。
  • 博主这里实际引入的是:spring-cloud-starter-consul-all,它包含了 :
    • 在这里插入图片描述
  • 博主这里引入spring-cloud-starter-consul-all,是因为后面其他功能需要用到另外两个依赖包。
  •    <dependency>
           <groupId>org.springframework.cloud</groupId>
           <artifactId>spring-cloud-starter-consul-all</artifactId>
       </dependency>
    

2、注册服务到 Consul

  • Consul 客户端

    @SpringBootApplication
    @RestController
    public class Application {
    
        @RequestMapping("/")
        public String home() {
            return "Hello world";
        }
    
        public static void main(String[] args) {
            SpringApplication.run(Application.class, args);
        }
    
    }
    
  • Consul 配置

  • application.yml

    spring:
      cloud:
        consul:
          host: localhost
          port: 8500
          discovery:
            enabled: true
            register: true
            service-name: consul_web
    
    • 其实 enabled: trueregister: true可以不配置,他们的默认值就是 true。这里把他们列出来是为了强调有这样的配置
  • 服务注册。项目启动之后,会自动注册到 Consul 代理。

    • 在这里插入图片描述
  • 把管理注册为一个单独的服务。

    • 首先,需要添加依赖:
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-actuator</artifactId>
         </dependency>
      
    • 其次,需要修改 application.yml
      spring:
          application:
              name: consul_web
          cloud:
              consul:
                  host: localhost
                  port: 8500
                  discovery:
                      enabled: true
                      register: true
      server:
          port: 8000
      management:
          server:
              port: 4452
      
    • 重启应用,在 Consul 代理管理页面可以看到单独的服务:
      • 在这里插入图片描述
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值