多进程模式#
LMCache 多进程 (MP) 模式将 LMCache 作为一个 独立服务 运行,vLLM 实例通过 ZMQ 连接到该服务。每个节点的 LMCache 服务器可以为多个 vLLM pod 提供服务,提供进程隔离、共享缓存和独立资源扩展。
关键好处#
进程隔离 -- LMCache 和 vLLM 在独立的进程(或容器)中运行,因此与缓存相关的问题不会导致推理引擎崩溃。
推理路径上没有 GIL 争用或 Python 开销 -- 通过在单独的进程中运行 LMCache,它的 Python GIL 和 CPU 工作(哈希、内存管理、L2 I/O)不会与 vLLM 的推理线程竞争。
跨 Pod 共享缓存 -- 同一节点上的多个 vLLM 实例共享一个 L1 缓存,最大化 KV 重用。
独立资源扩展 -- 为缓存分配 CPU 内存,与用于推理的 GPU 显存独立。
多层存储 (L1 + L2) -- 由持久化 L2 存储通过 NIXL (GDS、POSIX、HF3FS 等) 支持的内存 L1 缓存。
内置可观察性 -- 开箱即用的 Prometheus 指标和遥测事件系统。
先决条件#
建议使用最新版本的 vLLM 以获得最佳兼容性
LMCache 最新开发分支
服务器变体#
LMCache 提供三个服务器入口点:
入口点 |
描述 |
|---|---|
|
推荐。 ZMQ + FastAPI HTTP 前端(为 K8s 探针添加 |
|
(遗留) 仅使用 MPCacheEngine 的 ZMQ 服务器(没有 HTTP 端点)。请使用 |
|
(遗留)启用 CacheBlend 的服务器。建议使用 |