# SpringCloud 服务治理实现(Consul)
Posted MarlonBrando1998
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了# SpringCloud 服务治理实现(Consul)相关的知识,希望对你有一定的参考价值。
Spring Cloud Consul通过自动配置和绑定到Spring Environment和其他Spring编程模型习语,为Spring Boot应用程序提供Consul集成。通过一些简单的注释,您可以快速启用和配置应用程序中的公共模式,并使用Hashicorp的Consul构建大型分布式系统。提供的模式包括服务发现、分布式配置和控制总线。
Spring Cloud Consul 功能
- 服务发现:可以向Consul代理注册实例,并且客户端可以使用Spring托管的Bean发现实例
- 通过Spring Cloud Netflix支持Ribbon,客户端负载均衡器
- 支持Spring Cloud LoadBalancer-Spring Cloud项目提供的客户端负载均衡器
- 通过Spring Cloud Netflix支持Zuul,动态路由器和过滤器
- 分布式配置:使用领事键/值存储
- 控制总线:使用Consul Events的分布式控制事件
下载Consul:注意下载Windows版本的用迅雷 不然 慢的一批
-
网址:https://www.consul.io/downloads
-
下载Windows 版本
-
注意配置Consul 的Path 环境变量,不然点击exe程序会闪退。
-
然后cmd 中开发模式启动 :
consul agent -dev
-
访问:localhost:8500 界面如下
后端应用注册到Consul上
引入依赖
<dependencies>
<!-- 服务注册 -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-consul-discovery</artifactId>
<version>1.2.1.RELEASE</version>
</dependency>
<!-- SpringBoot -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>1.5.21.RELEASE</version>
</dependency>
</dependencies>
启动类开启注册注解
ConsulApplication.java
@SpringBootApplication
@EnableDiscoveryClient
public class ConsulApplication {
public static void main(String[] args) {
SpringApplication.run(ConsulApplication.class);
}
}
yaml
配置文件
server:
port: 8001
spring:
application:
name: consul-client-test
cloud:
consul:
host: 127.0.0.1
port: 8500
discovery:
healthCheckPath: /
healthCheckInterval: 5s
启动服务看Consul上如下
-
可以使用
Consul
代替SpringCloud Config
做配置中心。 -
SpringCloudConfig
配置见:https://blog.csdn.net/qq_37248504/article/details/106740467 -
完整代码见git:https://gitee.com/Marlon_Brando/back/tree/master/springcloud-consul
以上是关于# SpringCloud 服务治理实现(Consul)的主要内容,如果未能解决你的问题,请参考以下文章