环境
IDEA + lombok + maven
如果下载依赖有问题,更换阿里仓库或中央仓库
SpringCloud是什么?
springmvc :前端控制
mabatis :数据库访问
springCloud是一个工具集
1.通过集成多个工具,解决微服务中的各种问题
2.微服务全家桶
springCloud不是什么?
springCloud不是一个解决单一问题的工具。
远程调用 :RestTemplate
负载均衡 :Ribbon
重试 :调用出错,重试 Ribbon
降级、熔断、限流 Hystrix
监控 :监控问题出现位置 Hystrix Dashboard、Turbine 、Sleuth 、ZipKin
配置中心 :对配置集中管理 Config server
…
1.工具类 ,不自己写,直接在gitee上搜索
著名开源项目hutool工具
2.TypeReference
指定转换的类型:new TypeReference(List)(){}
3.@RequestBody
用来接收参数,从请求的协议体,完整的接收协议体数据
注册和发现
注册中心产品:
Eureka、Consul、ZooKeeper、etcd、nacos…
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,通过注解触发自动配置