Redis Streaming
首页
快速开始
  • 核心 API
  • Runtime
  • Config
  • State
  • Checkpoint
  • Watermark
  • Window
  • Source & Sink
  • Reliability
  • Registry
  • MQ
  • 架构设计
  • Exactly-Once
  • MQ 设计
  • Registry 设计
  • 部署指南
  • 性能调优
  • 故障排查
GitHub
首页
快速开始
  • 核心 API
  • Runtime
  • Config
  • State
  • Checkpoint
  • Watermark
  • Window
  • Source & Sink
  • Reliability
  • Registry
  • MQ
  • 架构设计
  • Exactly-Once
  • MQ 设计
  • Registry 设计
  • 部署指南
  • 性能调优
  • 故障排查
GitHub
  • 快速开始

    • 5分钟上手
    • Spring Boot 集成
  • 核心概念

    • 架构概述
    • 核心 API
    • 运行时环境
  • 基础设施模块

    • Config 配置中心
    • Registry 服务注册
    • MQ 消息队列
  • 流处理核心

    • State 状态管理
    • Checkpoint 检查点
    • Watermark 水位线
    • Window 窗口
  • 数据集成

    • Source & Sink
    • CDC 变更捕获
    • Aggregation 聚合
    • Table 表操作
    • Join 流连接
  • 可靠性

    • Reliability 组件
    • Metrics 监控
  • 设计文档

    • Exactly-Once 语义
    • MQ 设计
    • Registry 设计
  • 运维

    • 部署指南
    • 性能调优
    • 故障排查
    • CI/CD
  • 开发

    • 开发指南
    • 测试指南
    • 发布流程

安装部署

本页提供最小上线要点,完整过程请见 docs/DEPLOYMENT.md。

1) 运行时要求

  • Java 17+
  • Redis 6+(生产环境推荐集群/哨兵)

2) Redisson 集成(推荐)

使用 redisson-spring-boot-starter 配置集群/哨兵:

implementation 'org.redisson:redisson-spring-boot-starter:3.29.0'

Cluster 示例(redisson-cluster.yaml):

clusterServersConfig:
  nodeAddresses: ["redis://10.0.0.1:6379", "redis://10.0.0.2:6379"]
  password: your_pwd
  scanInterval: 2000
  connectTimeout: 10000
  timeout: 3000

application.yml:

spring:
  redisson:
    file: classpath:redisson-cluster.yaml

3) 可观测性

  • 开启 Actuator + Prometheus;抓取 /actuator/prometheus
  • 关注 mq_*、retention_*、reliability_* 指标与告警
  • Redis runtime 指标:redis_streaming_runtime_*(吞吐/延迟/checkpoint/state/window/watermark 等)
  • Trace/日志关联:RedisRuntimeConfig.mdcEnabled(true) + mdcSampleRate(0~1)(MDC keys:rs.*)

4) 上线自检

  • Redis 连通性/权限校验通过
  • 消费者组分配均衡,pending 扫描/接管(claim)策略就绪
  • DLQ 回放流程已演练,增长告警已配置

5) 多实例与滚动升级建议(要点)

  • 同一 job 建议通过 consumer group 水平扩展;并结合 MqOptions.maxLeasedPartitionsPerConsumer 避免超配 lease。
  • checkpoint 为单进程 stop-the-world(不跨实例 barrier);多实例部署时请优先使用幂等 sink 或 Redis-only 原子 sink 方案确保端到端效果一致性。
  • 滚动升级:先扩容新版本实例,观察 leased partitions 与错误率稳定后,再逐步缩容旧版本实例。
Edit this page
最近更新: 2026/1/1 13:26
Contributors: cuihairu
Next
性能调优