分类 spring cloud 下的文章

创建独立spring boot 应用

引入依赖

spring cloud spirng

   <!--       consul  client-->
    <!--       引入依赖-->
       <dependency>
           <groupId>org.springframework.cloud</groupId>
           <artifactId>spring-cloud-starter-consul-discovery</artifactId>
       </dependency>

配置application.properties

server.port=8082

指定服务名称

spring.application.name=CONSULCLIENT

consul server 服务注册地址

spring.cloud.consul.host=localhost
spring.cloud.consul.port=8500
spring.cloud.consul.discovery.service-name=${spring.application.name}

加注解在入口类上面

@EnableDiscoveryClient //通用服务注解

启动成功后 连上服务会一直显示,红XX,添加下面健康检查依赖即可

<!-- 健康依赖检查-->

   <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-actuator</artifactId>
   </dependency>

consul 服务注册中心
简介:consul 基于go 语言开发的服务注册中心 轻量级服务注册中心 google开发
作用: 管理微服务中所有的服务 注册 发现 管理 服务元数据信息存储(服务名 地址列表) 心跳健康检测

consul 服务中心安装
下载地consul

https://www.consul.io/downloads

在指定目录解压,注意:不建议目录包含中文

E:\consul\consul.exe

启动服务注册中心 在consul 安装目录打开cmd

consul agent -dev 

访问consul 管理界面

浏览器输入:http://localhost:8500

管理界面基本介绍

 dc1:数据中心名称:datacenter 默认为:dc1
 指定数据中心启动 consul agent -dev -datacenter=sss
 services :当前consul 服务中注册服务列表 ,默认:client server 同时启动自己注册自己 会出现一个consul 一个服务
 nodes 查看集群的节点
 key/value  存储 数据
 ACL 版本集成控制
 Intentions 集成其他第三方组件

推荐 配置环境变量

path:Econsul(自己安装consul目录)

集群实例

集群搭建

完全集群

创建3个springboot项目
引入eureka server 依赖
配置文件application.properties
tips:node为一个微小的springboot项目

node1: server.port=8761

      http://localhost:8762/eureka,http://localhost:8763/eureka

node2: server.port=8762

      http://localhost:8761/eureka,http://localhost:8763/eureka

node3: server.port=8763

      http://localhost:8761/eureka,http://localhost:8762/eureka

在每个项目main方法加入

@EnableEurekaServer 注解

引入依赖

<!-- 引入Eureka Client-->

<dependency>

    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>

写配置

#指定服务端口
server.port=8989
#指定 服务名称
spring.application.name=EUREKACLIENT
#eureka server 服务注册中心地址 暴露服务地址
eureka.client.service-url.defaultZone=http://localhost:8761/eureka

#用来修改eureka server 默认接受心跳最大时间 默认是90s
eureka.instance.lease-expiration-duration-in-seconds=10
#指定客户端多久向eureka server 发送一次心跳 默认是30s
eureka.instance.lease-renewal-interval-in-seconds=5

加注解

Application main方法上面加上这个注解
@EnableEurekaClient //让当前微服务作为一个eurekaserver客户端进行服务注册

引入Eureka依赖

<!-- 引入Eureka Server-->

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>

配置Eureka-server

#eureka 默认端口 8761
server.port=8761
#指定服务名称 ps:服务不能出现下划线 默认服务名称不区分大小写,推荐服务大写
spring.application.name=EUREKASERVER
#eureka server 服务注册中心地址 暴露服务地址
eureka.client.service-url.defaultZone=http://localhost:8761/eureka
#关闭eureka client 立即注册
eureka.client.fetch-registry=false
# 让当前应用仅仅是服务服务注册中心
eureka.client.register-with-eureka=false

#eureka关闭自我保护机制

#关闭自我保护
eureka.server.enable-self-preservation=false
#超时3s自动清除
eureka.server.eviction-interval-timer-in-ms=3000

写注解

在application spring类上面加上注解@EnableEurekaServer //开启当前应用是一个服务注册中心