
springcloud alibaba
文章平均质量分 89
it噩梦
好记性不如烂笔头
展开
-
Sentinel使用总结
文章目录1.初识Sentinel1.1.雪崩问题及解决方案1.1.1.雪崩问题1.1.2.超时处理1.1.3.仓壁模式1.1.4.断路器1.1.5.限流1.1.6.总结1.2.服务保护技术对比1.3.Sentinel介绍和安装1.3.1.初识Sentinel1.3.2.安装Sentinel1.4.微服务整合Sentinel2.流量控制2.1.簇点链路2.1.快速入门2.1.1.示例2.1.2.练习:2.2.流控模式2.2.1.关联模式2.2.2.链路模式1)添加查询商品方法2)查询订单时,查询商品3)新增订原创 2022-03-05 16:32:41 · 2074 阅读 · 1 评论 -
Spring 之 @Autowired 的理解
前言在了解@Autowired之前,需要知道先提出几个问题:1、InstantiationAwareBeanPostProcessor 这个接口是干嘛的,字面上理解是感知Bean实例话的处理器,这篇请看Spring之InstantiationAwareBeanPostProcessor 理解2、什么是依赖注入?依赖注入:Dependency Injection,简称DI,说白了就是利用反射机制为类的属性赋值的操作。3、什么是注入,注到哪里?注入就是为某个对象的外部资源赋值,注入某个对象所需要的.原创 2021-11-23 22:15:00 · 944 阅读 · 0 评论 -
基于Nacos服务地址动态感知原理实现ribbon远程调用平滑上下线
背景远程调用一般都会用ribbon,尽管使用feign,还是用的ribbon做的负载均衡,远程调用。但是ribbon会每隔30s刷新注册表信息,这样就会导致如果服务下线了,由于注册表没有及时更新,那远程调用就会报错。我们看下默认ribbon实现。com.netflix.loadbalancer.PollingServerListUpdater 这个类是ribbon更新注册表的核心类。nacos 动态更新地址原理Nacos客户端中有一个HostReactor类,它的功能是实现服务的动态更新.原创 2021-08-30 12:53:53 · 2909 阅读 · 9 评论 -
spring cloud stream kafka rabbit 实现死信队列
文章目录前言RabbitMQ实现环境搭建代码演示测试代码Kafka实现环境搭建代码演示测试代码前言之前写过一篇,spring kafka 死信队列,这个文章是写的spring kafka的,该篇记录下基于spring cloud stream实现死信队列,方便以后用到的时候翻阅,有不对的地方或者需要改进的地方,还请各位提出。RabbitMQ实现环境搭建还是老规矩使用docker-compose启动,下面先给出脚本,这是搭建了一个集群的方式。version: "2"services: .原创 2021-02-08 17:04:42 · 2095 阅读 · 1 评论 -
SpringCloud 远程调用日志记录traceId和spanId
最近在项目开发中遇到了一些问题,项目为多机部署,大量日志输出导致很难筛出指定请求的全部相关日志,以及下游服务调用对应的日志。因此计划对项目日志打印进行一些小改造,使用一个traceId跟踪请求的全部路径,前提是不修改原有的打印方式。简单的解决思路想要跟踪请求,第一个想到的就是当请求来时生成一个traceId放在ThreadLocal里,然后打印时去取就行了。但在不改动原有输出语句的前提下自然...原创 2020-06-20 11:42:54 · 8671 阅读 · 3 评论 -
【SpringCloudAlibaba专题】Springcloud gateway之获取requestBody踩坑(G版本)
文章目录踩坑示范爬坑案例CacheRequestBodyFilterLoggerFilter#前言之前写springcloud gateway收集日志,由于之前没有调研全面,导致了一个小坑,无法记录post方法获取requestBody。踩坑示范ServerHttpResponseDecorator decoratedResponse = new ServerHttpResponseDe...原创 2020-01-11 10:39:05 · 1778 阅读 · 0 评论 -
【限流】spring cloud gateway 令牌桶源码分析及扩展
简介SpringCloud Gateway 集成了redis做限流。限流作为网关最基本的功能,Spring Cloud Gateway官方就提供了RequestRateLimiterGatewayFilterFactory这个类,使用Redis和lua脚本实现了令牌桶方式的限流.这个filterFactory依赖RateLimiter及KeyResolver,其中KeyResolver用...原创 2019-12-11 10:50:01 · 1167 阅读 · 2 评论 -
【SpringCloudAlibaba专题】spring cloud gateway结合nacos实现sentinel动态限流值url参数模式
接着上篇的header模式,有时候会想到能不能通过url参数来限流呢,sentinel也是支持的。分析URL这种模式通过调试我发现,通过url添加参数名称为type,值为warn,sentinel也会埋点。rules.add(new GatewayFlowRule("httpbin_route") .setCount(1) .setInter...原创 2019-12-06 10:05:56 · 1224 阅读 · 0 评论 -
【SpringCloudAlibaba专题】spring cloud gateway结合nacos实现sentinel动态限流值header模式
上一篇是写如何动态限流的,力度是对所有的访问者,突然今天有个需求,是这样,需要根据不同的租户来限流,怎么做呢?来看下吧。追踪源码com.alibaba.csp.sentinel.adapter.gateway.common.rule#GatewayFlowRule 这个类中,就是昨天我们nacos的那些配置,代码片段如下:public class GatewayFlowRule { ...原创 2019-12-05 16:22:31 · 1928 阅读 · 0 评论 -
【SpringCloudAlibaba专题】nacos作为服务注册中心以及配置中心(G版本)
【SpringCloud专题】nacos作为服务注册中心以及配置中心(G版本)原创 2019-11-07 16:08:45 · 239 阅读 · 0 评论 -
【SpringCloudAlibaba专题】nacos作为服务注册中心之feign远程调用(G版本)
【SpringCloud专题】nacos作为服务注册中心之feign初探(G版本)Hystrix [hɪst'rɪks],中文含义是豪猪,因其背上长满棘刺,从而拥有了自我保护的能力本文所说的Hystrix是Netflix开源的一款容错框架,同样具有自我保护能力。一、 hystrix设计原则防止任何单独的依赖耗尽资源(线程)过载立即切断并快速失败,防止排队尽可能提供回退以保护用户免受...原创 2019-11-08 11:29:05 · 757 阅读 · 0 评论 -
【SpringCloudAlibaba专题】Springcloud gateway之分流、限流、熔断、动态路由(G版本)
Springcloud GatewaySpring Cloud Gateway 是 Spring Cloud 的一个全新项目,该项目是基于 Spring 5.0,Spring Boot 2.0 和 Project Reactor 等技术开发的网关,它旨在为微服务架构提供一种简单有效的统一的 API 路由管理方式。Spring Cloud Gateway 作为 Spring Cloud 生态系统...原创 2019-11-09 14:34:34 · 1554 阅读 · 2 评论 -
【SpringCloudAlibaba专题】springcloud融合dubbo实践
nacos支持springcloud注册中心,同事也支持dubbo为注册中心,今天分享怎么用http中feign的方式去调用dubbo服务,其实看到这也就行了,一句话其实还是用http的方式掉的,没有什么新鲜的。一、创建服务提供者1. 创建fast-dubbo-server工程,首先是maven依赖 <dependency> <groupId&g...原创 2019-11-22 17:25:11 · 563 阅读 · 0 评论 -
【SpringCloudAlibaba专题】spring cloud gateway结合nacos实现sentinel动态限流
最近需要做限流,看一下网关的限流,做了一demo,防止以后忘记操作流程。准备nacos环境nacos ,下载下来unzip启动 sh startup.sh -m standalone准备sentinel环境sentinel-dashboard-1.6.0.jar 下载jar包通过命令启动:java -jar sentinel-dashboard-1.6.0.jar ,这里要介绍下...原创 2019-12-04 18:02:59 · 2905 阅读 · 0 评论