热缓存的 pip 安装要 13 秒,uv 只要 56 毫秒
来源:dev.to — 2026-09-13
📋 概述
作者用一份真实的 63 个包的后端依赖(含 numpy、pandas、pillow)在干净的 Python 3.12 容器里做对照:冷缓存下 pip 约 26 秒、uv 约 5.4 秒,快约 4.8 倍;热缓存下 pip 约 13.2 秒,uv 只要 56 毫秒,快约 236 倍。差距的根源不是下载,而是 uv 维护内容寻址的全局仓库,默认用硬链接把文件接进新环境,几乎不复制数据;pip 每次仍要复制并解包全部 63 个包。同一份依赖的三个环境,uv 只多占约 12MB,pip 会写约 675MB。
🔑 核心要点
- 冷缓存下 uv 约快 4.8 倍,热缓存下 13.2 秒变成 56 毫秒,约 236 倍。
- 两种方式解析出的 FastAPI、pandas、numpy、SQLAlchemy、Pydantic 版本完全一致。
- uv 用内容寻址的全局仓库加硬链接,新建环境几乎没有数据复制。
- 三个环境共享同一份缓存,uv 额外占用约 12MB,pip 需要约 675MB。
- 硬链接只能在缓存与环境位于同一文件系统时生效,这是真实限制。
💡 金句
问题不是 uv 为什么快,而是我们为什么接受了每次建环境都复制一整棵依赖树这件事这么久。
👍 0
👎 0
← 返回 dev.to 首页