【问题标题】:Heroku deployment of play 2.1 application very slow (region eu)播放 2.1 应用程序的 Heroku 部署非常慢(欧盟地区)
【发布时间】:2013-06-22 11:53:42
【问题描述】:

几周以来,我的 play 2.1 应用程序的部署非常缓慢。事实上,它随机缓慢以至于构建超时(15 分钟的时间限制)。

我已经尝试过使用自定义 buildpack,但几乎没有效果。

当我按照here 的描述在本地进行构建时,它需要 appr。 10 分钟,但大部分时间用于检索相关工件。当我查看 Heroku 上的构建时,检索不需要太多时间,因此检索似乎不是问题。

关于构建:[info] 编译 83 个 Scala 源代码和 3 个 Java 源代码。

看起来源和文档(从未在 prod 中使用)的生成和打包似乎需要大量时间。

有什么方法可以显着减少构建时间,例如通过关闭文档的生成?

【问题讨论】:

  • 我也有同样的问题,希望能得到 Heroku 的支持。
  • 这里也一样。去看看其他地方的建筑并将蛞蝓推到 Heroku。见:github.com/ddollar/heroku-anvil

标签: heroku playframework sbt playframework-2.1


【解决方案1】:

您可以通过减少应用程序编译中包含的内容来潜在地减少编译时间。您可以告诉 Heroku slug 编译器从它创建的应用程序 slug 中排除文档和源等内容。

Heroku 使用一个名为 .slugignore 的文件,它与 .gitignore 文件的概念相同。 .slugignore 文件的详细信息在 Heroku 开发中心的 Slug 编译器文章中介绍:

https://devcenter.heroku.com/articles/slug-compiler

如果您不确定部署的实际组成部分,您可以使用以下命令通过安全 shell 连接到正在运行的 Heroku 应用程序

heroku run bash

然后,您可以浏览您的应用程序部署文件和文件夹,看看是否还有其他可以删除的内容。 Heroku Scala 构建包应该已经删除了 ivy 缓存之类的东西。

【讨论】:

  • 谢谢。已经试过了。但效果几乎没有。奇怪的是构建时间的变化。从总共 5 分钟到 30 分钟后超时(我得到了 heroku 的特殊标志)一切都会发生。
【解决方案2】:

太糟糕了,我遇到了同样的问题。不是 100% 肯定,但我怀疑这是导致问题的 sbt 依赖项检查之一。对我来说,症状是在“OpenJDK install ... done”消息之后,下一个等待 3-5 分钟。

【讨论】:

    猜你喜欢
    • 2021-04-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多