使用集群模块运行Node.js应用程序在Heroku中没有意义?

时间:2012-07-10 09:19:38

标签: node.js heroku cluster-computing

Heroku 可以运行

Web Dynos

工人Dynos

以便 Web Dynos 处理路线

和工人工人Dynos 负责处理工作。

由于存在 Dyno 的单位,

似乎在Heroku上使用Node.js群集模块对我来说毫无意义。

因为Node.js集群模块将使用服务器CPU的所有核心

Dyno 对我来说似乎是CPU核心的虚拟单元。

我是对的吗?或者是否仍然需要使用集群模块运行node.js应用程序?

3 个答案:

答案 0 :(得分:4)

我发现实际上值得使用群集模块

因为每个 dyno 都有4个CPU内核。


参考: http://www.quora.com/Heroku/How-powerful-is-one-Heroku-dyno

答案 1 :(得分:2)

这是一个老问题,我想我应该更新一个更完整的答案。

根据this table的文件

  • 1X Dynos有1个群集
  • 2X Dynos有2个簇
  • PX Dynos有12个群集

因此,假设您使用的是1X dynos,则无需实现群集。如果你正在使用其他的,那么这样做是个好主意。

可以在WEB_CONCURRENCY环境变量上找到簇的数量。

答案 2 :(得分:-1)

这对我来说是个好消息,我认为dyno只是一个核心。 我实际上编写并开源了一个小但非常精心制作的集群设置(由redis和作业队列支持)

https://bitbucket.org/jeveloper/nodejscluster