springcloud alibaba微服务案例

springcloud alibaba微服务体系的组成:
服务发现 - Nacos
服务调用 - OpenFeign/Dubbo/gRPC
路由网关 - Gateway
配置中心 - Nacos
消息驱动 - RocketMQ
流量控制 - Sentinel
分布式事务 - SEATA
分布式任务调度 - SchedulerX
分布式存储 - OSS
NACOS作用:
服务发现和服务健康检测
动态配置服务
动态dns服务
服务及元数据管理

在这里插入图片描述
设置mybatis驼峰命名自动转换规则:
在这里插入图片描述
Feign和OpenFeign:
Feign是一个开源声明式的WebService客户端,用于简化服务通信
Feign采用接口+注解方式开发,屏蔽了网络通信的细节
OpenFeign是springcloud对Feign的加强,用于简化Feign的开发
其本身是一个http协议的通讯工具包

调用过程:
在这里插入图片描述
Ribben:
Ribben是SpringCloud自带组件,用于实现微服务通信的客户端负载均衡
在这里插入图片描述
Sentinel:
下载Sentinel jar包并运行,访问localhost:8080 Sentinel仪表盘对服务进行操作
在这里插入图片描述
流控规则:
流控模式:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

流控效果:
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
熔断机制:
在这里插入图片描述
熔断策略:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
Sentinel通信原理:
在这里插入图片描述
通信的特点:
在这里插入图片描述
OpenFeign整合Sentinel:
自定义熔断或限流触发内容:
在这里插入图片描述
指定fallbackFactory熔断或限流触发类
在这里插入图片描述
限流熔断类型:
在这里插入图片描述
Nacos和Sentinel持久化:
当服务重启后,可视化界面设置的配置就失效了,原因是默认在当前的主机内存中对规则进行的管理,可以在nacos控制台的配置管理>新建配置创建规则:

上图配置的json内容对呀sentinel仪表盘中新建流控规则的各个属性和属性值,配置完成后需要添加maven依赖,在yml配置文件中进行绑定,application.yml文件如下:


com.alibaba.csp
sentinel-datasource-nacos

在这里插入图片描述在这里插入图片描述
Gateway微服务网关:
在这里插入图片描述
创建gateway项目,yml配置如下:
在这里插入图片描述

启动项目,请求http://localhost/服务名/服务路由地址 访问具体的服务

路由规则设置
在这里插入图片描述
跨域设置
在这里插入图片描述

基于JJWT实现微服务JWT授权:
创建认证中心服务,引入JJWT依赖
在这里插入图片描述
yml配置文件:
在这里插入图片描述
模拟登陆返回token信息:
在这里插入图片描述
自定义注解和拦截器组合验证token:
定义自定义注解:
在这里插入图片描述
定义拦截器配置:
在这里插入图片描述
拦截器进行校验:在这里插入图片描述
在这里插入图片描述
使用注解:在这里插入图片描述
nacos配置中心:
引入依赖


com.alibaba.cloud
spring-cloud-starter-alibaba-nacos-config
${spring-nacos.version}

在nacos注册中心配置列表新建一个配置,配置内容为application.yml文件内容:
在这里插入图片描述
删掉项目中的配置文件,创建一个bootstrap.yml引导文件:
在这里插入图片描述
nacos应用的配置共享:
在这里插入图片描述
在bootstrap.yml文件中添加如下配置
在这里插入图片描述
在nacos注册中心配置列表新建一个配置,配置内容为common-dev.yml文件,配置需要共享的配置内容。

**配置优先级为:服务名-{profiles}.yml > 服务名.yml > 全局共享.yml**

自动刷新配置:
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值