0%

consul简介

consul简介

由于Eureka的停更,很多公司也开始使用consul来作为注册中心了,consul是一套开源的分布式服务发现和配置管理系统,用Go语言编写,提供了微服务系统的服务治理、配置中心、控制总线等功能

优点

  • 基于raft协议,简洁
  • 支持健康检查,支持HTTP和DNS协议
  • 支持跨数据中心的WAN集群
  • 提供图形界面
  • 跨平台,支持windows、mac、linux

consul的使用

查看版本

1
consul --version

使用开发模式启动

1
consul agent -dev

consul启动之后可以访问localhost:8500来进行查看web页面

程序编写

依赖

1
2
3
4
5
<!-- consul服务发现 -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-consul-discovery</artifactId>
</dependency>

主程序

1
2
3
4
5
6
7
@SpringBootApplication
@EnableDiscoveryClient
public class ConsulApp {
public static void main(String[] args) {
SpringApplication.run(ConsulApp.class,args);
}
}

配置

1
2
3
4
5
6
7
8
9
10
11
server:
port: 8005
spring:
application:
name: provide-consul
cloud: # consul配置
consul:
host: localhost
port: 8500
discovery:
service-name: ${spring.application.name} #注册的服务名称