【发布时间】:2017-09-08 09:07:01
【问题描述】:
阅读 Heroku 文档我不明白进程和 dyno 之间的匹配,每个 dyno 是否有一个进程?或者每个测功机可以有多个进程吗?
谢谢
【问题讨论】:
标签: heroku
阅读 Heroku 文档我不明白进程和 dyno 之间的匹配,每个 dyno 是否有一个进程?或者每个测功机可以有多个进程吗?
谢谢
【问题讨论】:
标签: heroku
一个测功机就是一个容器。你可以把它想象成一台服务器。
Heroku 允许您监控每个测功机的单个进程,如果该进程崩溃,则在另一个实例上重新启动测功机。
但是,如果您愿意,您可以启动多个。如果它们崩溃,它们不会自动重新启动。
一种方法是创建一个start-process 文件,并为其指定+x chmod 标志,以便它可以执行。
然后,在该文件中,您将拥有以下内容:
#!/bin/bash -e
start-first-process &
start-second-process
这将启动第一个进程(不要忘记最后的&,所以它是在后台启动的)然后启动第二个进程,并将其视为主要进程(如果它停止,你的测功机重启)。
您的 Procfile 将如下所示:
worker: start-process
测功机将被命名为worker,您可以使用以下方法对其进行放大:
heroku ps:scale worker=1
【讨论】: