简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
通过 GatewayControllerEndpoint和 AbstractGatewayControllerEndpoint 类的源码,我们可以知道 Gateway 提供获取路由信息、过滤器、断言等接口,这里面我们重点关注了的关于路由部分的,也是源码中涉及较多的,这两个类的源码提供了路由的增删改查及刷新的接口。AbstractGatewayControllerEndpoint#refresh 路
我们知道 RabbitMQ 保证消息一定会发送成功,一般有两种方式,分别是Publisher Confirm 机制和事务消息,上一篇我们分享了如果使用 RabbitMQPublisher Confirm 机制来保证消息一定发送成功,本篇我们来分享使用 RabbitMQ 事务消息保证消息一定会发送成功。
后面的源码分析就是围绕图中红色圈出来的部分这个顺序去分析的,这个 Slot 的顺序也是 Sentinel 的工作顺序。ContextUtil#enter 方法是真正的创建 Context 的方法,该方法先会判断是否是默认的 ContextName,如果是默认的 ContextName 就抛出异常,否则调用 ContextUtil#trueEnter 创建 Context,该方法会经过一系列的判断,
Sentinel 的一个重要功能就是限流,对于限流来说有多种的限流算法,比如滑动时间窗口算法、漏桶算法、令牌桶算法等,Sentinel 对这几种算法都有具体的实现,如果我们对某一个资源设置了一个流控规则,并且选择的流控模式是“快速失败”,那么 Sentinel 就会采用滑动时间窗口算法来作为该资源的限流算法,本篇我们来分析 Sentinel 中滑动时间窗口算法的实现。至此,Sentinel 滑动时
上一篇我们分析了 Sentinel 的各种核心概念点以及 Sentinel 的执行流程,并分别演示了使用 Sentinel 编码和注解方式来管理资源的场景,加上我们前面学习的 Nacos,本篇来分享 Spring Cloud 整合 Nacos、Sentinel、OpenFigen 实战。我们使用 user-service 调用 order-service 的接口,来演示 Sentinel、Open
分析结果,我们发现出现了一串字符串 “\xac\xed\x00\x05t\x00\x10”,这串字符串明显不是我们想要看到的,难道是 Redis 集成又出问题了吗,使用代码获取了缓存字符串,发现并没有这串奇奇怪怪的字符串,那是怎么回事呢?以上配置,会自动由 Spring Boot 自动装配,不需要再配置类,Spring Boot 会自动把这些配置参数加载后实例化连接池。本篇简单分享了 Spring
浏览器使用 OPTIONS 方法发起一个预检请求(preflight request),来感知服务端是否允许该跨域请求,服务器确认允许之后,才发起实际的 HTTP 请求,OPTIONS 请求没有附带请求数据,响应体也为空,简单来说就是一种探测,这就是预检请求,是浏览器的一种保护机制。简单请求的对立面就是非简单请求,也就是说不能同时满足简单请求条件的请求就是非简单请求,就可能会触发预检(OPTION
分析:既然要获取最新的数据,id自增,时间也是顺序的,最新的数据是不是意味这就是 id 或者时间最大的那条数据?最近项目中迭代一个旧的功能,再原有的设计上进行功能拓展(因成本等原因,不考虑项目重构),其中设计到了这么一个场景,同一个业务 ID 在同一张表中有 N 条数据,需要查询出最新的那一条数据。结果显而易见,获取到了最大的那条数据,功能已经实现,但是子查询的效率比较低,我们还有没有更高效的方法
生态本意是指生物在一定的自然环境下生存和发展的状态,Spring 生态其实就是由 Spring 所衍生出的一些列开源项目和技术,因为 Spring 生态提供了丰富的功能和特性,比如我们熟知的 Spring Boot、Spring Cloud、Spring Data、Spring Security 等等,Spring 生态还有很多其他组件和技术,也就是 Spring 的生态非常强大,所以我们要学习