前置知识: AI工程

多区域LLM服务与KV缓存局部性

6 minIntermediate

理解缓存感知路由如何避免跨区域预填充惩罚和灾难恢复陷阱

多区域LLM服务与KV缓存局部性

轮询负载均衡对缓存LLM推理主动有害。不落在持有其前缀的节点上的请求支付完整预填充成本——长prompt P50约800 ms vs 缓存命中约80 ms。2026年生产模式是缓存感知路由器(vLLM Router in Rust, llm-d router),消费KV缓存事件并按前缀哈希匹配路由。最近研究(GORGO)使跨区域网络延迟成为路由目标的显式项。商业”跨区域推理”产品(Bedrock跨区域推理, GKE多集群网关)将推理视为不透明——它们处理可用性,不处理TTFT。JPMorgan和Mayo Clinic在2024年11月运行us-east-1故障转移约22分钟。DR现实:32%的LLM DR失败因为团队备份了权重但忘记分词器文件或量化配置。

类型: 学习 语言: Python (stdlib, toy前缀缓存感知路由模拟器) 前置知识: Phase 17 · 04 (vLLM服务), Phase 17 · 06 (SGLang RadixAttention) 时间: ~60分钟

学习目标

  • 解释为什么轮询负载均衡对缓存LLM推理有害。
  • 描述缓存感知路由器如何消费KV缓存事件并按前缀哈希匹配路由。
  • 说出32%的LLM DR失败原因(备份了权重但忘记分词器/配置)。
  • 设计多区域LLM部署带缓存感知路由和DR计划。

问题

轮询将请求均匀分布到节点。对无状态服务好,对缓存LLM服务坏。每个请求有前缀(系统prompt、工具schema、历史)。如果请求落在持有其前缀KV缓存的节点上,它跳过预填充。如果落在不同节点上,它支付完整预填充成本。轮询确保大多数请求错过缓存。

概念

缓存感知路由

缓存感知路由器维护哪个节点持有哪个前缀的KV缓存。路由决策:

  1. 对请求prompt计算前缀哈希。
  2. 查找持有该哈希的节点。
  3. 如果找到,路由到该节点(缓存命中)。
  4. 如果未找到,路由到最不繁忙的节点(缓存未命中)。

vLLM Router(Rust实现)和llm-d router消费KV缓存事件(分配、驱逐)并实时更新路由表。

跨区域延迟

GORGO研究使跨区域网络延迟成为路由目标的显式项。不只是”路由到缓存节点”,而是”路由到缓存节点加最小网络延迟”。如果缓存节点在另一个区域(100ms RTT),可能比本地预填充(800ms)更好但仍比本地缓存命中(80ms)差。

DR现实

32%的LLM DR失败因为团队备份了权重但忘记:

  • 分词器文件(模型特定)
  • 量化配置(AWQ/GPTQ参数)
  • LoRA适配器
  • 服务引擎配置

完整DR需要备份整个服务栈,不只是模型权重。

JPMorgan/Mayo Clinic案例

2024年11月us-east-1故障转移约22分钟。原因:权重在S3但分词器在本地EBS。EBS不可用时模型无法加载。

实践

code/main.py模拟缓存感知vs轮询路由在多节点集群上。

输出

本课程产生outputs/skill-multi-region-router.md。给定区域布局和流量模式,设计缓存感知路由和DR计划。

练习

  1. 计算轮询vs缓存感知路由在5节点集群、80%前缀共享率下的平均TTFT。
  2. 设计DR计划:备份什么、存储在哪、恢复流程。
  3. 为什么跨区域推理产品不优化TTFT?它们优化什么?
  4. 阅读GORGO论文。描述路由目标函数。
  5. 你的团队在us-east-1和eu-west-1部署。设计缓存感知路由策略。

关键术语

术语常见说法实际含义
缓存感知路由”前缀哈希路由”基于前缀哈希将请求路由到持有KV缓存的节点
前缀哈希”prompt指纹”prompt前缀的哈希;用于查找缓存节点
轮询”均匀分布”请求均匀分布到节点;对缓存LLM有害
DR”灾难恢复”灾难恢复;需要备份整个服务栈
KV缓存事件”分配/驱逐通知”节点发出的KV缓存分配和驱逐事件

延伸阅读