如何同时优化 Webpack 的构建速度和线上包体积?
cache: { type: 'filesystem' }。include / exclude 缩小 Loader 匹配范围。thread-loader 或并行能力,但先确认任务足够重,避免进程通信成本。stats、speed-measure 或构建分析定位真正的慢点,不凭经验盲目加缓存。import() 和 SplitChunksPlugin 做路由、公共依赖和大库拆分。sideEffects,让 Tree Shaking 生效。runtimeChunk 和长期缓存,避免业务发布后重新下载未变化的 vendor。webpack-bundle-analyzer、Performance Budget 监控异常增量。拆分并非越细越好:请求数、RTT、模块执行和缓存命中需要一起权衡。source-map 适合线上错误还原,但 Source Map 应上传到监控平台并限制公开访问。