01
性能调优概述
什么是交易系统性能、为什么需要调优、性能指标(延迟、吞吐量、抖动)、调优的全局观。
全局指标
02
硬件基础与选型
CPU架构(NUMA vs SMP)、内存层级(L1/L2/L3缓存)、网卡(Solarflare/Mellanox)、SSD选型。
CPU内存网卡
03
操作系统调优
Linux内核参数调优(sysctl)、中断亲和性(IRQ Affinity)、CPU隔离(isolcpus)、大页内存(HugePages)。
内核隔离大页
04
网络协议栈优化
TCP/IP协议栈开销、内核旁路技术(DPDK、RDMA)、零拷贝技术、套接字选项调优。
DPDKRDMA零拷贝
05
低延迟网络通信
UDP vs TCP选择、多播技术、PTP时间同步、网络延迟测量。
UDP多播PTP
06
内存管理优化
内存池设计、对象池模式、避免GC(垃圾回收)、内存对齐与缓存行填充。
内存池对齐无GC
07
并发编程基础
线程 vs 进程、锁的代价、原子操作、内存屏障、无锁编程入门。
原子屏障无锁
08
无锁数据结构
无锁队列(LMAX Disruptor)、无锁哈希表、RCU(读-拷贝-更新)机制。
DisruptorRCU
09
线程模型设计
Reactor模式、Proactor模式、线程池优化、协程在交易系统中的应用。
Reactor协程
10
数据序列化与编码
二进制协议 vs 文本协议、Protocol Buffers、FlatBuffers、SBE(Simple Binary Encoding)。
ProtobufSBE
11
日志系统优化
异步日志、日志级别动态调整、日志压缩与轮转、避免日志IO阻塞。
异步轮转
12
数据库性能调优
内存数据库(Redis/KeyDB)、时序数据库(InfluxDB/ClickHouse)、SQL优化、连接池配置。
Redis时序连接池
13
缓存策略
本地缓存(Caffeine/Guava)、分布式缓存(Redis Cluster)、缓存穿透/击穿/雪崩、读写分离。
Caffeine雪崩
14
消息队列选型与调优
Kafka性能调优、ZeroMQ低延迟特性、RabbitMQ vs NATS、消息持久化策略。
KafkaZeroMQ
15
行情数据处理
行情快照与增量、数据降采样、Tick级数据处理流水线、内存数据库存储行情。
Tick降采样
16
订单管理系统(OMS)优化
订单状态机设计、订单路由优化、风控前置检查、批量撤单。
状态机风控
17
执行算法优化
TWAP/VWAP算法实现、冰山订单、Sniper算法、算法延迟分析。
TWAP冰山
18
回测系统性能
回测引擎架构、事件驱动回测、向量化回测、并行回测、回测数据存储优化。
向量化并行
19
性能分析工具
perf、Flame Graph(火焰图)、eBPF、JProfiler/YourKit、gperftools。
火焰图eBPF
20
代码级优化
循环展开、分支预测优化、内联函数、SIMD指令集、编译器优化选项。
SIMD分支预测
21
JVM调优(Java系)
JVM内存模型、GC算法选择(G1/ZGC)、JIT编译优化、JVM参数调优。
ZGCJIT
22
C++性能优化
RAII与资源管理、移动语义、模板元编程、内联汇编、PGO(按配置文件优化)。
RAIIPGO
23
性能测试方法论
基准测试(Benchmark)、负载测试、压力测试、稳定性测试、性能回归。
Benchmark回归
24
性能监控与告警
Prometheus + Grafana、实时延迟监控、吞吐量监控、自定义Metrics。
PrometheusGrafana
25
容量规划与弹性伸缩
峰值流量估算、水平扩展 vs 垂直扩展、自动扩缩容策略、多活架构。
弹性多活
26
灾备与高可用
主备切换、异地多活、数据一致性(CAP理论)、故障演练。
CAP灾备
27
安全与性能平衡
加密开销(TLS/SSL)、DDoS防护、访问控制、审计日志性能影响。
TLSDDoS
28
实战案例一:高频交易系统延迟优化
从微秒到纳秒级延迟优化实战,硬件/软件协同。
高频纳秒
29
实战案例二:量化基金中台系统吞吐量提升
从千笔/秒到百万笔/秒,架构与代码全面升级。
吞吐量百万
30
未来趋势
FPGA加速、SmartNIC、CXL内存池、AI辅助性能调优、Serverless交易系统。
FPGACXLAI