是否有关于 Heroku 上下文中的 slug 的规范、白皮书或任何内容?我一直注意到 Heroku 如何将 Rails 应用程序编译成 slug,从而提高性能,至少在其专有环境中是这样。
有没有办法在 Heroku 之外做到这一点,和/或在不同的环境中利用它?
是否有关于 Heroku 上下文中的 slug 的规范、白皮书或任何内容?我一直注意到 Heroku 如何将 Rails 应用程序编译成 slug,从而提高性能,至少在其专有环境中是这样。
有没有办法在 Heroku 之外做到这一点,和/或在不同的环境中利用它?
正如上面 John Beynon 所指出的,“编译”是构建包过程的另一个名称。当您将代码推送到 Heroku 时,我们会解决所有依赖项并将生成的包 TGZ 转换为“slug”。
该过程是开源的,具有完整的文档和指向我们devcenter上各种受支持的构建包的链接。如果您想了解确切的技术细节,请参阅buildpack api 文档。
我们已经看到其他一些平台开始采用 buildpack。很高兴看到任何喜欢采用它们并提供反馈的人。
除此之外,我没有看到任何文档,但它不是传统意义上的“编译”。
他们获取您已将应用程序推送到的 git 存储库,删除 .git 目录,清理不必要的目录,处理 .slugignore 文件以删除您在运行时不需要的任何位(如测试等),然后包含依赖项然后创建一个更小的应用程序版本,它更容易分布在测功网格中。slug 尺寸越小,扩展应用程序的速度就越快,因为您添加的每个 dyno 都会收到“已编译”slug 的新副本。