知识卡片
代码包体积影响冷启动时长
内容
[[冷启动的本质原因]]里”下载代码和依赖”是必经步骤,代码包体积因此直接线性影响冷启动时长——理想 情况下千兆内网带宽,100KB的包下载不到0.01秒,而200MB的包需要1.6秒左右,加上解压时间差距可能拉大 到2秒以上,而2秒的响应延迟对大多数Web接口已经是不可接受的体验。所以在打包部署代码时,用Webpack 等工具做依赖裁剪、压缩,把包体积降到最小,是一个和[[冷启动优化的三层手段]](复用/预热/池化) 平级但更基础的优化项——后三者是运维层面缓解冷启动,而控制包体积是从源头减少冷启动本身需要做的 工作量。发散:这类似于程序启动优化里”减小二进制体积以加快加载”的老问题,只是在FaaS里因为冷启动 频繁发生而被放大了影响。
参考来源
《Serverless工程实践:从入门到进阶》第4章《Serverless应用开发、调试与优化》