2026年5月30日 01:00

Cookie 性能如何优化?怎样减少大小和数量?

Cookie 性能优化的核心是少带、少存、少匹配。因为同域请求会自动携带匹配 Cookie,Cookie 越多,请求头越大,移动网络和高并发接口越容易被拖慢。实战里优先把会话凭证保留在 Cookie,把偏好、缓存、草稿这类非敏感数据迁到 localStorage、sessionStorage 或 IndexedDB;同时收窄 Domain、Path,避免静态资源和无关接口也背着 Cookie 跑。

追问

每次 HTTP 请求都会带上匹配的 Cookie。即使只是请求一张图片,只要域名和路径匹配,也可能多传几 KB 请求头。HTTP/2 有 HPACK 压缩,但不能把设计不当的 Cookie 变成零成本。

只存必要字段,键名和值都尽量短;多个小偏好可以合并成一个值,但不要把大对象硬塞进去。超过 4KB 或频繁变化的数据不适合放 Cookie。

Domain 和 Path 怎么配合性能优化?

Domain 不要随手设成 .example.com,Path 也不要一律 /。例如后台令牌只给 admin.example.com/admin,API Cookie 只给 /api,静态资源域名最好不设置 Cookie。

项目里常见坑是什么?

分析、AB 实验、灰度标记容易越积越多,最后每个请求都多带一串历史垃圾。上线前可以在网关或浏览器 DevTools 里看 Request Headers,超过 2KB 就该清理。

写段代码

javascript
function cookieBytes() { return new Blob([document.cookie]).size; } if (cookieBytes() > 2048) { console.warn('Cookie too large:', cookieBytes()); }
标签:Cookie