一个 Heroku 应用程序中的两个进程与两个 Heroku 应用程序

Posted

技术标签:

【中文标题】一个 Heroku 应用程序中的两个进程与两个 Heroku 应用程序【英文标题】:Two process in one Heroku app vs two heroku apps 【发布时间】:2014-10-14 03:18:23 【问题描述】:

我有一个 heroku 应用程序,它有两个进程 - 一个 web 和一个 worker,都在同一个应用程序中。我计划整个月都在 ps:scale 1x 中运行这两个。这实质上意味着我每月超过 750 个免费测功小时并且必须支付一些费用。

一个应用,两个进程

应用

网络:gunicorn myproject.wsgi --log-file - worker: celery -A myproject worker -B -E -l info -c 1

我正在考虑将它们拆分为两个独立的应用程序,Web 和工作人员拥有自己的应用程序,并通过 REST API 在它们之间进行通信。由于这是两个应用程序,因此每个应用程序分别如下。这样,两个应用程序将分别低于 750 小时,并且不会收费。

两个应用程序,每个应用程序都有一个进程

App1

网络:gunicorn myproject.wsgi --log-file -

App2

worker: celery -A myproject worker -B -E -l info -c 1

与第一种方法相比,这样做的优缺点是什么?谢谢

【问题讨论】:

请问有什么答案吗?还是我应该使用不同的标签发布? 不确定,但您的标签看起来不错。这是一个非常具体的问题;这可能是问题所在。我也想看看答案。 【参考方案1】:

据我所知,这种方法的唯一 优点 是节省成本,缺点 是必须跳过障碍才能通过 REST API 进行通信。

【讨论】:

以上是关于一个 Heroku 应用程序中的两个进程与两个 Heroku 应用程序的主要内容,如果未能解决你的问题,请参考以下文章

如何获取Heroku应用程序的IP地址

多线程

Heroku中的进程类型和Dynos有啥区别

从同一个 git repo 部署两个单独的 heroku 应用程序

Heroku 最佳实践时钟与 node.js

如何在heroku上的两个不同应用程序之间共享worker?