Consul是HashiCorp公司推出的开源工具,用于实现分布式系统的服务发现与配置。与其他分布式服务注册与发现的方案相比,Consul的方案更具有“一站式”的特点,其可实现以下功能:
Spring Cloud Consul的安装非常简单 下载地址:https://www.consul.io/downloads
当然,不配置环境变量也行,不过每次启动都得在consul的安装目录中打开cmd,有点麻烦,我们最好还是配置个环境变量 我的目录是:
将这个加入path即可。
consul -v
consul agent -dev
http://localhost:8500
<!--引入consul依赖-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-consul-discovery</artifactId>
</dependency>
server.port=8082
# 指定服务名称
spring.application.name=CONSULCLIENT
# consul server服务注册地址
spring.cloud.consul.host=localhost
spring.cloud.consul.port=8500
# 执行注册当前服务的服务名称 默认:$(spring.application.name)
spring.cloud.consul.discovery.service-name=${spring.application.name}
# 关闭健康检查 注意:在生产情况下不推荐关闭健康检查
spring.cloud.consul.discovery.register-health-check=false
默认情况consul监控健康是开启的,但是必须依赖健康监控依赖才能正确监控健康状态所以直接启动会显示错误,引入健康监控依赖之后服务正常
<!-- 这个包是用做健康度监控的-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
再次启动服务