01
延迟基础概念
消息延迟的定义、延迟的度量单位(毫秒、微秒)、延迟与吞吐量的关系。
定义度量吞吐量
02
延迟产生根源
网络传输延迟、磁盘I/O延迟、CPU处理延迟、内存访问延迟。
网络磁盘CPU内存
03
消息队列核心模型
生产者-消费者模型、点对点模型、发布-订阅模型中的延迟点。
生产者-消费者点对点发布-订阅
04
网络层延迟分析
TCP握手延迟、Nagle算法影响、网络拥塞控制对延迟的影响。
TCPNagle拥塞控制
05
序列化与反序列化
JSON、Protobuf、Avro序列化性能对比,序列化对延迟的影响。
JSONProtobufAvro
06
磁盘I/O优化
顺序读写 vs 随机读写、页缓存机制、零拷贝技术原理。
顺序读写页缓存零拷贝
07
内存管理优化
内存分配器(jemalloc vs ptmalloc)、内存池技术、避免内存碎片。
jemalloc内存池碎片
08
锁与并发
锁竞争导致的延迟、无锁编程、读写锁优化、CAS操作。
锁竞争无锁CAS
09
批量处理技术
消息批量发送、批量确认、批量刷盘对延迟的影响。
批量发送批量确认刷盘
10
异步与回调
同步调用 vs 异步回调、Future模式、Reactor模式。
异步FutureReactor
11
背压机制
背压的定义、背压实现策略(令牌桶、漏桶)、背压与延迟的关系。
背压令牌桶漏桶
12
消息持久化
刷盘策略(同步刷盘 vs 异步刷盘)、WAL(预写日志)原理。
刷盘同步/异步WAL
13
消费端延迟
消息堆积原因、消费能力不足、Rebalance对延迟的影响。
堆积消费能力Rebalance
14
延迟测量工具
ping、traceroute、Wireshark、tcpdump、perf、火焰图。
pingWiresharkperf火焰图
15
消息中间件延迟对比
Kafka、RocketMQ、RabbitMQ、Pulsar延迟特性分析。
KafkaRocketMQRabbitMQPulsar
16
Kafka延迟优化
分区策略、acks配置、batch.size、linger.ms调优。
分区acksbatch.sizelinger.ms
17
RocketMQ延迟优化
消息存储结构、CommitLog与ConsumeQueue、刷盘配置。
CommitLogConsumeQueue刷盘
18
RabbitMQ延迟优化
消息确认机制、镜像队列、惰性队列。
确认机制镜像队列惰性队列
19
Pulsar延迟优化
BookKeeper读写路径、分段存储、分层存储。
BookKeeper分段存储分层存储
20
操作系统层面优化
CPU亲和性、中断绑定、大页内存、NUMA架构优化。
CPU亲和性大页内存NUMA
21
JVM层面优化
GC暂停对延迟的影响、G1 vs ZGC、JVM参数调优。
GCG1ZGCJVM
22
网络协议优化
TCP_NODELAY、快速重传、BBR拥塞控制算法。
TCP_NODELAY快速重传BBR
23
缓存策略
本地缓存 vs 分布式缓存、缓存预热、缓存淘汰策略。
本地缓存分布式缓存淘汰策略
24
预取与预计算
数据预取、结果预计算、延迟隐藏技术。
预取预计算延迟隐藏
25
全链路追踪
分布式追踪(OpenTelemetry)、延迟链路分析、瓶颈定位。
OpenTelemetry链路分析瓶颈
26
延迟SLA制定
延迟百分位数(P99、P999)、延迟目标设定、监控告警。
P99P999SLA告警
27
混沌工程与延迟注入
Chaos Mesh、故障注入、延迟韧性测试。
Chaos Mesh故障注入韧性
28
案例分析
金融交易系统延迟优化、实时推荐系统延迟优化。
金融交易实时推荐
29
前沿技术
RDMA、DPDK、XDP、用户态协议栈对延迟的突破。
RDMADPDKXDP用户态协议栈
30
总结与最佳实践
延迟优化方法论、常见误区、持续优化文化。
方法论误区持续优化