有没有办法配置多个工作者和/或Web进程在单个Heroku应用程序容器中运行?或者这是否必须分解为多个Heroku应用程序?
例如:
worker: node capture.js
worker: node process.js
worker: node purge.js
web: node api.js
web: node web.js
答案 0 :(得分:38)
所有流程必须具有唯一名称。 此外,名称唯一具有重要名称的进程是web
和worker
无关紧要,没有特殊含义。web
进程,如Heroku docs:
Web流程类型很特殊,因为它是唯一的流程类型 将从Heroku的路由器接收HTTP流量。其他流程类型 可任意命名。 - (https://devcenter.heroku.com/articles/procfile)
所以你想要Procfile
这样:
capture: node capture.js
process: node process.js
purge: node purge.js
api: node api.js
web: node web.js
然后,您可以单独缩放每个流程:
$ heroku ps:scale purge=4