为什么Heroku构建缓存在每次发布时都会变得越来越大?
在我的Heroku应用程序上,我每天部署多次。在每一个版本中,Heroku的“slug”都会变得越来越大,即使代码有微小的变化。这是我在构建日志中看到的消息类型:为什么Heroku构建缓存在每次发布时都会变得越来越大?,heroku,heroku-cli,Heroku,Heroku Cli,在我的Heroku应用程序上,我每天部署多次。在每一个版本中,Heroku的“slug”都会变得越来越大,即使代码有微小的变化。这是我在构建日志中看到的消息类型: Warning: Your slug size (446 MB) exceeds our soft limit (300 MB) which may affect boot time. 之前的版本是444MB,441之前的版本,等等 随着每一次发布,它都变得越来越大,直到它达到Heroku的500 MB硬限制,然后我需要 为什么对于
Warning: Your slug size (446 MB) exceeds our soft limit (300 MB) which may affect boot time.
之前的版本是444MB,441之前的版本,等等
随着每一次发布,它都变得越来越大,直到它达到Heroku的500 MB硬限制,然后我需要
为什么对于较小的代码更改,构建缓存变得越来越大?如何防止它达到500 MB的硬限制,这会破坏我的自动部署?您是否尝试过下载两个版本的slug并比较内容?您可以使用slugs CLI插件下载它们,看看有哪些额外的文件阻塞了它们:没有想到这一点。行!那有帮助!我现在可以看到,在两个版本之间,
node\u modules目录
变大了25Mb,尽管我们没有在package lock.json
中更改任何内容。更准确地说,是node\u modules/.cache
变得越来越大。这个问题是由于我们使用了Webpack-Terser插件的cache:true
。Heroku随后缓存了Terser的缓存。随着每次发布,事情变得越来越大。使用cache:false
,一切都恢复正常。考虑到这个问题可能是另一个项目的另一个问题,下载slug来解决问题的想法似乎仍然是应该做的事情,所以我将把它作为公认的答案。谢谢@jvergeldeos!