我需要决定将应用的静态图像资产 (~300mb) 的存储位置。最方便的地方是在应用程序内部并签入源代码管理。但另一种选择是将它们放在外部云存储桶中。
如果将这些资产添加到应用程序中,签入源代码管理,并作为 slug 的一部分推送到 Heorku,对于 heroku 部署会产生什么后果(如果有)?
非常感谢 Heroku 上的快速部署时间(例如 < 2 分钟),因此如果将 slug 大小增加 300mb 会增加几分钟的时间,那么这将是有用的信息,因为它会确认避免这种方法并改为存储在云存储中。
答案 0 :(得分:1)
slugsize 代表您的包裹的足迹,因此真正的影响是将其转移到 Dyno 所需的时间。
Heroku 建议将其保持得尽可能小,以确保更轻/更快的部署以及扩展您的应用程序。
对 RAM 没有影响(除非应用程序以某种方式加载图像)。
整体部署肯定会变慢,但很难量化需要多少额外的分钟/秒。这可以测试。
我的建议是,仅当非常确定图像的数量/大小不会随时间变化时,才考虑将图像存储在应用程序中。如果不是这种情况,最好已经计划一个更具可扩展性的架构(将图像存储在外部专用存储上)。