设置Heroku环境variables而不重新启动应用程序

是否有可能设置一个Heroku环境variables而不重新启动应用程序?

我的应用通过OAuth2连接到不同的在线服务。 对于我连接的每个服务,我需要设置一个OAuth2 ID和密码。 为了让这些configurationvariables保持在我的代码之外,我使用了环境variables,并在process.env (node.js)中读取它们。

每次我添加一个新的服务到我的应用程序,我需要添加相应的环境variables的ID和秘密。 在推送最新的代码之前,我需要这样做,以便在下次启动新的服务连接时,可以使用OAuth2 ID和密码variables。

目前我的工作stream程如下:

  1. 使用Heroku工具带设置环境variables: heroku config:set <SERVICE>_ID=foo <SERVICE>_SECRET=bar
  2. 推最新的代码: git push heroku master

目前,这两个操作将重新启动应用程序。 我真的更喜欢第一个操作不重新启动应用程序,因为这些configurationvariables的变化不需要生效,直到步骤2)。 通过在步骤1)重新启动我的应用程序将经历不必要的停机时间。

那么,有没有办法来防止步骤1)重新启动应用程序?

根据这篇文章,它非常明确地表示

每当你设置或删除一个configuration变种,你的应用程序将被重新启动。

就我个人而言,我也希望有一种方法来做你所要求的。 在较大的应用程序中,当您运行多个进程types时,系统范围的硬重启可能会很痛苦。 很多时候,我设置的环境variables对应用程序来说并不重要,比如涉及未来function的设置,或者是具有旧值的设置,但是您希望新值在滚动重新启动时生效时尚。