源码分析
-
Redisson分布式锁实现原理
一、背景 本文一方面是抱怨一下现下的面试体验,另一方面看一下redisson(3.15.1)的trylock api的实现(我也不喜欢针对面试去看源码,只是想找个出口宣泄一下)。 …
-
SpringCloudGateway源码(四)限流组件
前言 如果不使用Alibaba Sentinel的网关流控规则, 是否可以选择使用SpringCloudGateway基于Redis的限流组件? 基于这个问题,笔者想了解一下scg…
-
Sentinel源码(十)Dashboard
前言 本章学习Sentinel Dashboard相关源码。 Sentinel 控制台是流量控制、熔断降级规则统一配置和管理的入口,它为用户提供了机器自发现、簇点链路自发现、监控、…
-
ZooKeeper源码(一)读写请求
背景 最近有个读者私信我,说要学习zookeeper(下文简称zk)源码,所以我就仔细研读了一下zk源码分享给大家。 从业务开发实战角度来看,zk用途很广泛,但是行业内有很多火热的…
-
ZooKeeper源码(三)WAL预写日志
前言 本文基于zk3.5.8,分析zk对于WAL(Write Ahead Log)预写日志的实现。 其实各大中间件都有对于WAL的实现,比如mysql的redolog、es的tra…
-
Dubbo源码(一)SPI vs Spring
前言 本文基于Dubbo2.7.6版本,分析Dubbo SPI的实现。 笔者认为Dubbo SPI的比较对象更应该是Spring,而不是java的SPI。 不同于其他Dubbo S…
-
RocketMQ源码-从4.x到5.x
前言 RocketMQ目前主要分为4.x和5.x版本,本文基于时间线分析一下每个小版本新增的feature,主要目的: 1)对于RocketMQ的发展有个整体的认知,方便之后源码学…
-
Spring Security-2-表单认证
Spring Security-2-表单认证 我们在地址小节介绍了Spring Security的HttpBasic基础认证模式,这个模式方法比较简单,不需要制作登录页面,使用范围…
-
Sping Security-3-动态认证用户信息
Sping Security-3-动态认证用户信息 概述 项目准备 添加依赖 添加数据库配置 创建user和权限表 实体类 实现两个实体类的Mapper 添加@MapperScan…
-
SpringSecurity-4-认证流程源码解析
SpringSecurity-4-认证流程源码解析 登录认证基本原理 Spring Security的登录验证核心过滤链如图所示 请求阶段 SpringSecurity过滤器链始终…
-
SpringSecurity-5-自定义登录验证
SpringSecurity-5-自定义登录验证 默认登录成功失败跳转页 为什么自定义登录验证结果处理场景 自定义登录成功的结果处理 自定义登录失败的结果处理 自定义权限访问异常结…
-
SpringSecurity-6-基于Filter实现图形验证码
SpringSecurity-6-基于Filter实现图形验证码 SpringSecurity中有多种方式实现图像验证码,使用自定义过滤器去处理验证码逻辑是最简单的方式,只要将过滤…
-
SpringSecurity-7-自定义AuthenticationProvider实现图形验证码
SpringSecurity-7-自定义AuthenticationProvider实现图形验证码 上一章节我们介绍了如何使用过滤器(Filter)实现图形验证,这是属于Servl…
-
SpringSecurity-8-自动登录和注销功能实现
SpringSecurity-8-自动登录和注销功能实现 自动登录的实现 当我们在登录某一个网站的时候,我们会使用账号密码进行登录,但是我们不想每一次关闭浏览器,我们不想每一次重新…
-
SpringSecurity-9-实现通过手机短信进行认证功能
SpringSecurity-9-实现通过手机短信进行认证功能 手机短信流程分析 手机号登录的时候是不需要密码登录的,而是通过短信验证码实现免密登录。具体步骤如下 : 向手机发送验…
-
SpringSecurity-10-Session会话管理
SpringSecurity-10-Session会话管理 理解Session Http协议是一种无状态协议所以当服务端需要记录用户的状态时,需要某种机制用于识别用户,这个机制就是…