如何在 Heroku 上为每个测功机设置单独的 slug?
Posted
技术标签:
【中文标题】如何在 Heroku 上为每个测功机设置单独的 slug?【英文标题】:How to have separate slugs per dyno on Heroku? 【发布时间】:2022-01-23 23:17:08 【问题描述】:我的 heroku slug 大小空间不足,所以我想我可以通过将 worker 与主 web dyno 分开并单独构建 heroku 来解决它每个测功机的蛞蝓。这甚至可能吗?我在任何地方都没有找到这方面的信息,所以我既不能证明它可以做到,也不能证明它是错误的。有什么想法吗?谢谢
【问题讨论】:
【参考方案1】:由于您想要解决的根本问题似乎是蛞蝓大小,您是否尝试过以下任一潜在解决方案?
使用.slugignore
(documentation) 忽略不需要在最终构建中的文件
清除构建缓存,因为有时这可能会占用额外空间 (documentation)
创建支持票证,要求增加允许的 slug 大小。
虽然这些可能不会立即回答您的“我怎样才能拆分 slug”的问题,但我觉得它们可能比解决您的部署过程更容易解决您的 slug 大小问题,这似乎 不好玩。
【讨论】:
按照传统的记录方式减小 slug 大小不是一种选择,因为问题本质上是不一样的。我的问题是我有很大的依赖关系,所以我只能拆分应用程序。【参考方案2】:可以拆分 web 和 worker(如果有意义的话)并以不同方式部署它们。
您还可以考虑减少 Heroku guidelines 之后的 slug,或使用 Docker 将应用程序容器化。 Docker 镜像不受 slug 最大大小限制。
【讨论】:
不幸的是,我不能让我的 slug 尺寸更小,我知道我可以拆分 web 和 worker,但是热告诉 heroku 将它构建为单独的 slug?谢谢以上是关于如何在 Heroku 上为每个测功机设置单独的 slug?的主要内容,如果未能解决你的问题,请参考以下文章
您如何在单个 Heroku 测功机上运行多个 DelayedJob 工作人员?