Consul 简介
什么是Consul
安装
- 官网下载:https://www.consul.io/
- 386 是32位,AMD 是64位
- 将下载后压缩包进行解压
- 进入解压后的文件里,双击 consul.exe,安装运行consul
- 双击 consul.exe 后闪现了以下,然后直接就没了,打开 cmd ,输入 consul --version 查看 consul 是否安装成功
6. 开启开发者模式,在 cmd 界面里输入 consul agent -dev
7. consul 启动完成,通过 http://localhost:8500 访问 Consul 的首页
将服务注册进 consul 注册中心
- 在 pom.xml 文件里添加以下依赖
<!-- SpringCloud consul-server -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-consul-discovery</artifactId>
</dependency>
- 在 application.yml 文件添加以下配置
server:
port: 8006
spring:
application:
name: consul-provider-payment
# consul 注册中心地址
cloud:
consul:
host: localhost
port: 8500
discovery:
# hostname: 127.0.0.1
service-name: ${spring.application.name}
- 在项目的启动类上添加 @EnableDiscoveryClient 注解
package com.atguigu.springcloud;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
@SpringBootApplication
@EnableDiscoveryClient
public class OrderConsulMain80 {
public static void main(String[] args) {
SpringApplication.run(OrderConsulMain80.class, args);
}
}
- 在 controller.PaymentController 类添加以下代码
package com.atguigu.springcloud.controller;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.UUID;
@RestController
@Slf4j
public class PaymentController {
@Value("${server.port}")
private String serverPort;
@RequestMapping("/payment/consul")
public String paymentConsul() {
return "springcloud with consul: " + serverPort + "\t" + UUID.randomUUID().toString();
}
}
- 启动项目,在 consul 的 services 可以看到项目的名称出现在 consul 的 services 列表里,则做项目注册进 consul 注册中心成功