Spring Cloud(一)

Spring Cloud

环境:
1、IDEA或Eclipse(STS插件)
2、LomBok
3、Maven

如果下载依赖有问题,更换阿里仓库和中央仓库

Spring Cloud是什么

Spring Cloud是一个工具集
1、集成多个工具,来解决微服务中的各种问题
2、微服务全家桶

Spring MVC 前端控制
Mybatis 封装JDBC

Spring Cloud不是什么

1、Spring Cloud不是一个解决单一问题的工具

远程调用                RestTemplate
负载均衡                Ribbon
重试                    Ribbon
降级、熔断、限流        Hystrix
监控                    Hystrix DashBoard、Turbine、Sleuth、Zipkin
配置中心                Config server

课程要求

必须严格按照笔记做
笔记中都是完整代码
做的过程中不能直接cv,要自己手敲

业务模块

02-item
03-user
04-order
1、工具类 - 不用自己写,在gitee或github搜索
CookieUtil、JsonUtil、JsonResult
2、TypeReference
指定转换的类型:new ThypeReference>(){}
3、@RequestBody
用来接收参数,从请求的协议体,完整接收协议体数据

注册和发现

注册中心产品:
zookeeper、eureka、nacos、consul、etcd...

eureka

1、注册
服务提供者启动时,向eureka一次次反复注册,直到注册成功为止
2、拉取注册表
服务发现者每30秒拉取一次注册表(刷新注册表)
3、心跳
服务发现者每30秒发送一次心跳数据
eureka连续3次收不到一个服务的心跳,会删除这个服务
4、自我保护模式
特殊情况
如果由于网络不稳定或中断,15分钟内,85%以上服务器出现心跳异常,就会自动进入保护模式
在保护模式下,所有服务都不删除
网络恢复后,可以自动退出保护模式,恢复正常

开发期间很容易达到保护模式的条件,会影响测试,在开发期间可以关闭保护模式

搭建eureka服务器

1、新建SpringBoot项目
2、添加eureka server依赖
3、yml配置

1、主机名
2、禁用保护模式
3、针对单台服务器,配置不向自己注册,也不从自己拉取注册表

4、启动类注解@EnableEurenaServer,通过注解触发自动配置

application.yml配置

spring:
  application:
    name: eureka-server
server:
  port: 2001                          #默认8761
eureka:
  instance:
    hostname: eureka1                 #主机名,集群中区分不同服务器
 server:
    enable-self-preservation: false   #开发期间禁用保护模式
 client:
    register-with-eureka: false       #单台服务器不向自己注册
 fetch-registry: false                #单台服务器不从自己拉取

作业

1、提前下载最新依赖

课前资料\pom.xml
新建一个maven项目,把pom.xml代码粘进去,修改版本
Springboot:2.4.0
Springcloud:2020.0.0-M5
然后更新依赖

2、安装新版VMware

尽量用最新VMware,新版本对资源使用,运行效率都会有优化
课前资料中提供了两个版本

  • 15.5.2
  • 12.x-旧电脑CPU不支持虚拟化技术,可以使用12.x

官网还有最新的16版本

你可能感兴趣的:(java)