01
性能优化总览
风控系统性能瓶颈分析 · 优化目标与衡量指标(QPS、TP99、CPU/内存)· 优化方法论总览
概览指标
02
代码层面优化
Python内建函数与标准库高效使用 · 列表推导式与生成器 · 避免常见反模式
Python反模式
03
数据结构选型
list vs set vs dict 性能对比 · collections模块(deque、defaultdict、Counter)· 合理使用数组与哈希表
数据结构性能
04
并发与并行
GIL的本质与影响 · 多线程 vs 多进程 vs 异步IO · concurrent.futures实战
并发GIL
05
异步编程
asyncio核心概念 · 事件循环与协程 · 异步HTTP请求与数据库查询
asyncio协程
06
缓存策略
本地缓存(LRU、TTL)· 分布式缓存(Redis)· 缓存穿透/击穿/雪崩应对
缓存Redis
07
数据库优化
SQL查询优化(索引、慢查询)· 连接池配置 · ORM vs 原生SQL性能对比
SQL索引
08
NoSQL优化
Redis数据结构选择与优化 · MongoDB查询与索引优化 · HBase/ClickHouse场景适配
NoSQL时序
09
网络与IO优化
连接复用(HTTP Keep-Alive)· gRPC vs HTTP · 零拷贝与mmap
网络IO
10
内存管理
Python对象内存模型 · 内存泄漏检测(objgraph、tracemalloc)· gc模块调优
内存gc
11
计算密集型优化
NumPy向量化计算 · Cython加速 · Numba JIT编译
计算JIT
12
规则引擎优化
规则匹配算法(RETE、决策树)· 规则预编译与缓存 · 规则分层执行
规则引擎RETE
13
特征计算优化
特征预计算与在线计算分离 · 特征存储格式(Parquet)· 特征服务化
特征Parquet
14
模型推理优化
模型量化与剪枝 · ONNX Runtime · TensorRT部署 · Batch推理
推理TensorRT
15
实时计算优化
Flink/Spark Streaming参数调优 · 状态后端选择 · 反压处理
实时Flink
16
消息队列优化
Kafka/RocketMQ分区策略 · 批量消费 · 消息压缩与序列化
MQKafka
17
API网关优化
请求路由与限流算法(令牌桶、漏桶)· 熔断降级 · 请求合并
网关限流
18
序列化与反序列化
JSON vs Protobuf vs MessagePack · Schema演进 · 零拷贝序列化
序列化Protobuf
19
日志与监控优化
异步日志 · 采样日志 · Metrics采集与聚合(Prometheus)
日志监控
20
配置管理优化
配置中心选型(Apollo/Nacos)· 配置热更新 · 配置分层
配置Apollo
21
全链路压测
压测工具选型(wrk、locust、JMeter)· 压测数据构造 · 瓶颈定位
压测wrk
22
性能剖析工具
cProfile · py-spy · flamegraph · perf · eBPF
profilingeBPF
23
JIT与AOT编译
PyPy vs CPython · Cython编译 · Nuitka打包
编译PyPy
24
内存数据库优化
Redis Cluster vs Redis Sentinel · 内存淘汰策略 · Pipeline与Lua脚本
RedisLua
25
分布式追踪
OpenTelemetry · Jaeger/Zipkin · Span采样与聚合
追踪OpenTelemetry
26
容器化与编排
Docker资源限制 · K8s HPA与VPA · Sidecar性能开销
K8s容器
27
服务网格优化
Istio/Linkerd性能开销 · Sidecar资源调优 · mTLS优化
服务网格Istio
28
CDN与边缘计算
静态资源加速 · 边缘函数计算 · GeoDNS调度
CDN边缘
29
成本与性能平衡
预留资源 vs 弹性伸缩 · Spot实例使用 · 性能与成本的量化分析
成本弹性
30
案例实战
某金融风控系统从500QPS到5000QPS的优化全记录
实战金融