9.3 缓存一致性
缓存与数据库一致性策略:cache-aside 竞态窗口与延时双删方案、write-through 同步写与 write-behind 异步刷的适用场景、Redis Pub/Sub 分布式失效广播、最终一致性与数据库 CAS 强一致性选型、响应式链事务性缓存更新。
tag
缓存与数据库一致性策略:cache-aside 竞态窗口与延时双删方案、write-through 同步写与 write-behind 异步刷的适用场景、Redis Pub/Sub 分布式失效广播、最终一致性与数据库 CAS 强一致性选型、响应式链事务性缓存更新。
响应式缓存三层架构:Caffeine Async 本地缓存异步加载、Redis Reactive Lettuce 客户端操作、cache-aside 与 write-through 模式在 Mono/Flux 链中的实现,以及缓存穿透/击穿/雪崩防护策略。
R2DBC 多数据源配置:读写分离的 AbstractRoutingConnectionFactory 实现、主从路由策略、TransactionSynchronization 与响应式事务的兼容性限制,以及多数据源的连接池隔离与健康检查。
R2DBC 连接池健康监控完整方案:ConnectionPool 内置 metrics(acquired/idle/pending/max)暴露、Spring Boot Actuator ReactiveHealthIndicator 自定义、连接泄漏检测(maxAcquireTime/maxLifeTime)、后台驱逐与故障重试降级策略。
R2DBC 查询优化全面实践:索引设计原则与覆盖索引策略、EXPLAIN ANALYZE 计划解读与共享缓冲命中分析、响应式 N+1 问题的 JOIN/IN/Buffer 批量解决方案、Flux.flatMap 并发度与连接池配比、游标分页与 OFFSET 分页对比。
数据库 Schema 变更管理深度实践:Flyway 与 R2DBC 的双连接集成配置、迁移脚本 V{version}__desc 命名规范、baseline 标记现有数据库、已部署脚本不可变原则、手写补偿回滚、测试环境用户隔离与 Testcontainers 方案。
Spring Data R2DBC 响应式 Repository 模式:ReactiveCrudRepository 与 ReactiveSortingRepository、派生查询方法 naming convention、@Query 注解自定义 SQL、DatabaseClient 底层操作,以及与 JPA 的对比。
R2DBC 响应式事务管理:TransactionalOperator 编程式事务、事务传播行为、auto-commit 与手动控制、回滚策略与异常映射、savepoint 嵌套事务,以及 Spring Data R2DBC 的 @Transactional reactive 支持限制。
R2DBC 规范与驱动原理:ConnectionFactory、Connection、Statement、Result 的响应式接口设计,与 JDBC 的对比,r2dbc-postgresql 连接创建与查询执行流程,以及背压在 Result 流中的传递机制。
Spring WebFlux 测试工具链:WebTestClient 绑定 controller、router 与完整应用上下文、请求构建与响应断言、JSON Path 断言、Mock 服务替换与安全上下文注入、以及 WebFilter 测试。
Spring WebFlux 跨域与会话管理:CorsWebFilter 配置与预检处理、无状态 API 的 CSRF 禁用与替代防护、Spring Session Reactive 与 Redis 分布式会话,以及 JWT 无状态方案对比。
Spring WebFlux 响应式安全体系:SecurityWebFilterChain 配置、JWT 鉴权与 ReactorContext 传递、ReactiveAuthenticationManager、密码编码、无状态会话与 public/private 路径声明。
WebFlux 统一错误处理体系:@ControllerAdvice 与 @ExceptionHandler 全局异常捕获、自定义 ErrorResponse 体与分层错误码设计、HTTP 状态码映射、函数式路由错误处理、响应式链错误传播与降级模式。
WebFlux 响应式响应输出:Server-Sent Events (SSE) 实时推送、chunked Transfer-Encoding 流式传输、Flux 返回值自动适配、MediaType 协商与客户端消费背压衔接。附可运行示例。
WebFlux 请求体深度处理:Mono/Flux 绑定方式与背压传递语义、Jackson 反序列化配置、表单与 multipart 文件上传、流式大文件 DataBuffer 读取与释放安全,以及请求体大小限制与自定义 HttpMessageReader。
Spring WebFlux 过滤器体系详解:WebFilter 全局拦截链与 Ordered 优先级排序、HandlerFilterFunction 函数式路由局部过滤、过滤顺序与短路机制、跨线程状态传递以及网关日志/请求 ID/认证预检的实战配置。
Spring WebFlux 函数式路由:RouterFunctions 构建路由表、RequestPredicates 路径/方法/头匹配、HandlerFunction 处理请求、嵌套路由与 filter 组合,以及与注解路由的适用场景对比。
Spring WebFlux 注解路由详解:@RestController、@GetMapping/@PostMapping 等请求映射、路径变量与查询参数绑定、请求头抽取、Mono/Flux 返回值类型自动适配与 Content-Type 协商。
eventd v2 网关完整实现:模块划分(gateway/api/data)、Netty HTTP 路由表设计与前缀匹配、HTTP 到内部 API 的流式透传转发、WebSocket 消息到 HTTP 调用的协议转换、统一日志/请求 ID/错误处理中间件链与背压保护。
Reactor Netty WebSocket 的多会话管理:mapConnect 连接注册、ConcurrentHashMap session 表、按会话标识路由消息、广播与订阅模式、以及慢客户端背压在广播场景下的丢弃策略。附可运行示例。