SpringCloudAlibaba

nacos

注册中心,配置中心,服务管理
在这里插入图片描述

服务心跳

在服务注册后Nacos Client会维护一个定时心跳来持续通知Nacos Server,说明服务一直处于可用状态,防止被剔除。默认5秒发送一次心跳

服务注册发现

Nacos Discovery Starter
实时从服务列表拉取最新服务

服务健康检查

Nacos Server会开启一个定时任务用来检测注册服务实例健康情况,超过15s没收到客户端心跳就会将healthy置为false,超过30s就会剔除

一致性协议CAP

Nacos支持CP+AP
C:一致性
A:可用性
P:分区容错性

Nacos管理界面

雪崩保护
在这里插入图片描述
ephemeral设置为false时,当服务宕机时也不会剔除,在界面有保护阈值,当健康实例与总实例比值小于阈值就出将宕机的服务提供服务,防止洪峰流量到来导致服务雪崩【服务都不能用】

Ribbon负载均衡

nacos-discovery引入后就自动加了ribbon的依赖
更改负载均衡策略的方式

  • 配置好Bean的方式覆盖掉已有的负载均衡策略,方法名一定是iRule 在这里插入图片描述
  • 也可以在配置文件上给某一个 服务设置负载均衡策略在这里插入图片描述

Feign

  1. 添加依赖,加依赖前要确定有没有SpringCloud版本依赖有没有引入

在这里插入图片描述

  1. 写要调用请求所在的Controller对应fegin的接口【与controller是意义对应的】
    在这里插入图片描述
  2. 直接调用,注入fegin的接口,在启动类上加@EnableFeginClient注解在这里插入图片描述

openfegin日志配置

在这里插入图片描述
fegin的日志级别为debug ,springboot的日志级别为info,所以设置时就要将日志级别改为debug
全局应用,直接在日志配置类上加@Configuration
局部应用则将日志配置类上的@Configuration去掉,在需要出日志的fegin接口上加 在这里插入图片描述
另外一种局部日志配置在配置文件实现在这里插入图片描述

fegin契约配置

在这里插入图片描述
简而言之:升级系统用openfegin后,不能影响以前fegin的使用,来保证系统正常运行在这里插入图片描述

超时时间配置

配置类
在这里插入图片描述
配置文件
在这里插入图片描述

自定义拦截器

消费端调用服务提供方的时候起的作用
作用:

  1. 调用的时候记录日志【记录自己的日志】
  2. 访问的时候可以带一些参数【做一些认证授权】
    在这里插入图片描述

Nacos-config

Controller层上加@RefreshScope注解,改了配置信息就能随时感知

sentinel服务熔断

解决可用性问题,实现高可用
服务挂掉问题:
硬件问题:内存不够、磁盘空间不足
OOM问题
第三方服务挂了,请求第三方没有得到相应,导致线程池爆满,从而打垮服务器
总结:激增流量
其他服务拖垮
异常没有处理【代码中断、内存没及时释放】
负载不均【高估服务器】
线程池满了

sentinel—服务雪崩

服务雪崩:一个服务挂掉后,在并发高的情况下不断的进行访问,流量激增,导致其他服务也垮掉
在这里插入图片描述

sentinel—容错机制

稳定性、恢复性
超时机制,返回降级方案。但是当限制时间内,流量很大依旧有可能挤爆服务,所以
服务限流
隔离:用户的请求将不会直接访问服务,而是通过线程池中的空闲线程来访问服务。如果线程池已满,则进行降级处理
信号隔离
服务熔断

sentinel—介绍

分布式系统的流量防卫兵
在这里插入图片描述

流控规则体验

  1. 导入sentinel核心库
  2. 导入web场景启动器
  3. 在接口中定义资源
  4. 为资源进行规则设置【流控规则】在这里插入图片描述在这里插入图片描述

sentinel—@SentinelResource

基于上面的代码侵入性太强的缘故【耦合在接口当中】
改善措施:—@SentinelResource
改善接口中的资源定义、被流控降级的方法

使用步骤:

  1. 添加依赖【可以看出是通过切面实现的】在这里插入图片描述 2. 配置Bean【在启动类上配置】在这里插入图片描述
  2. 定义资源在这里插入图片描述在这里插入图片描述
  3. 流控降级的方法在这里插入图片描述在这里插入图片描述

Seata

在这里插入图片描述

什么是Seata

seata是一款开源的分布式事务解决方案,致力于提高性能和简易用的分布式服务
提供了:AT 、TCC 、SAGA 、XA事务模式
首推AT
在这里插入图片描述
二阶段提交协议:Prepare、Commit在这里插入图片描述在这里插入图片描述
在这里插入图片描述

Seata—分布式解决方案:AT模式

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

TCC

在这里插入图片描述

Seata复盘

在这里插入图片描述在这里插入图片描述

gateway—网关介绍

在这里插入图片描述

使用

创建shpringcloud模块

  1. 引入依赖
    在这里插入图片描述
  2. 编写配置文件
    在这里插入图片描述
    在这里插入图片描述

整合到nacos

  1. 添加依赖
    在这里插入图片描述
  2. 配置nacos
    在这里插入图片描述
    在这里插入图片描述

断言

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

自定义断言工厂

在这里插入图片描述

SkyWalking链路追踪

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值