Consul服务注册中心
简介:consul基于go语言进行开发服务注册中心,轻量级服务注册中心(goole)
作用:管理微服务中所有服务注册、发现、管理服务元数据信息存储(服务名,地址列表)以及心跳健康检查
Consul注册中心下载
首先去官网下载
解压文件压(目录最好不要有中文)
启动注册中心
1、首先在consul 打开cmd
运行命令
| 1 | consul agent -dev | 
mac用户 可以通过brew 进行安装
直接在终端运行命令即可
2、访问consul UI界面
默认端口为8500,直接访问这个端口就可以

SpringCloud配置Consul
还是同配置Eureka一样,首先我们创建一个maven子项目,继承父项目的依赖,然后将这个项目配置为SpringBoot服务(添加web依赖,添加配置文件,添加启动类),在这里就不详细说明了。
成为SpringBoot项目之后,就是简单的SpringBoot项目整合流程了
1、添加依赖
| 1 | <!-- 引入consul依赖--> | 
2、修改配置文件
| 1 | server: | 
3、添加注解
这里要注意,这里的注解不是像Eureka一样类似的注解@EnableEurekaClient,因为注册中心有很多,Spring为了方便适配多种注册中心,除了Eureka这种早期的注册中心之外,其余都使用@EnableDiscoveryClicent注解。
它会根据你引入的注册中心依赖来确定你用的是哪个注册中心。
| 1 | /** | 
4、然后启动服务,进入注册中心查看是否可用

然后发现,虽然有我们服务的名字,但是显示叉号,显示不可用
原因:consul server检测所有客户端心跳,但是发送心跳时client必须给予响应才能使该服务正常使用。在现有客户端中我们并没有引入健康检查依赖,所以导致健康检查始终不通过,导致服务不能使用,
解决:引入健康检查依赖
| 1 | <!-- 引入健康检查依赖--> | 
然后再次运行:

成功开启服务
 
          
          
          
         
          
         
          
        