Spring Cloud Consul学习笔记

Spring Cloud Consul学习笔记

1、简介

consul是HashiCorp公司推出的开源工具,用于实现分布式系统的服务发现与配置;
consul是一站式解决方案,安装包只是一个可执行文件,可以部署到Docker容器,部署后就提供了类似Eureka、SmartStack登服务治理中心的功能。

几个关键特性:

  • 服务发现
  • 健康检查
  • key/value存储
  • 多数据中心

相关地址:
Spring Cloud Consul 快速启动
Consul agent 文档

2、服务生产者实现

服务生产者添加consul依赖:

<dependencies>
    <dependency>
        <groupId>org.springframework.cloudgroupId>
        <artifactId>spring-cloud-starter-consul-allartifactId>
    dependency>
dependencies>
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.cloudgroupId>
            <artifactId>spring-cloud-consul-dependenciesartifactId>
            <version>1.2.1.RELEASEversion>
            <type>pomtype>
            <scope>importscope>
        dependency>
    dependencies>
dependencyManagement>

application.properties配置consul服务中心相关的properties

Spring Cloud Consul默认配置

spring.cloud.consul.host=localhost
spring.cloud.consul.port=8500

如需自定义则覆盖即可。

添加注解

启动类添加@EnableDiscoveryClient

@EnableDiscoveryClient
@SpringBootApplication
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application .class, args);
}

运行Consul agent

执行consul的开发模式命令:consul agent -dev

3、Consul集群

Consul集群的consul agent有两种运行模式:Server和Client,其中Server是用于监测和维护Client,Client是用于注册服务,运行健康检查和转发对 server 的查询。,官方建议每个Consul Cluster至少有3个或以上运行在Server模式的Agent,Client则不限。

你可能感兴趣的:(spring,cloud)