Heroku dyno /进程

时间:2017-09-08 09:07:02

标签: heroku

阅读Heroku文档我不了解进程和dynos之间的匹配,每个dyno有一个进程吗?或者每个dyno可以有多个进程吗?

谢谢

1 个答案:

答案 0 :(得分:1)

一个dyno是一个容器。你可以把它想象成一个服务器。

Heroku允许您监控每个dyno的单个进程,如果该进程崩溃,则在另一个实例上重新启动dyno。
但是如果你愿意,你可以启动多个。如果它们崩溃,它们将不会自动重启。

这样做的一种方法是创建一个start-process文件,并为其提供+x chmod标志,以便可以执行。

然后,在该文件中,您将拥有以下内容:

#!/bin/bash -e
start-first-process &
start-second-process

这将启动第一个过程(不要忘记最后的&,因此它在后台启动)然后启动第二个过程,并将其视为主过程(如果它停止,你的dyno重启)。

您的Procfile将如下所示:

worker: start-process

dyno将命名为worker,您可以使用以下命令对其进行扩展:

  

heroku ps:scale worker = 1