加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > Nginx > 正文

node.js – 自节点v0.12.2以来的负载平衡 – cluster,pm2或ngi

发布时间:2020-12-13 21:01:07 所属栏目:Nginx 来源:网络整理
导读:使用Node v0.12.2,群集模块supports Round-Robin (RR) load balancing可确保负载比以前的OS级负载平衡更均匀地分布. 所以现在我们被宠坏了选择: 使用cluster模块 使用 pm2 ,它使用引擎盖下的集群模块 使用 nginx 使用HAProxy 我在SO上知道这个优秀的post以

使用Node v0.12.2,群集模块supports Round-Robin (RR) load balancing可确保负载比以前的OS级负载平衡更均匀地分布.

所以现在我们被宠坏了选择:

>使用cluster模块
>使用pm2,它使用引擎盖下的集群模块
>使用nginx
>使用HAProxy

我在SO上知道这个优秀的post以及other answers,但是没有一个用RR模式解决了较新的Cluster模块.所以问题归结为:

仅根据其负载均衡功能判断,我应该使用pm2还是nginx?

最佳答案
TL; DR

If it’s just pm2 vs. nginx go for nginx. Better: both. Best: a even broader setup.

如果您想要最成熟的负载平衡功能,请使用HAProxy.这是最好的一件事.您将获得SSL终止,ACL并且它非常轻量级.我不能用数字证明,但我觉得它对http请求的命中率最低.好读是this.

如果您还需要提供(至少一些)静态内容,那么您的goto选项是nginx,因为它具有该领域的卓越功能.您的列表中也是唯一一个提供此类功能的人.除了节点本身,但做得很差.

pm2感觉非常重量级的IMO,并且往往更容易断裂.它的流程负载平衡功能非常好,可确保节点进程的正常运行时间.它抽象集群.

群集感觉只是“被修复”到最低限度.在过去,也许os级别的支持导致不同平台上的不同行为.例如,偏向于单个流程.

我目前的设置是:

> HAProxy用于群集范围的负载平衡,包括平衡每台计算机的多个进程实例
>静态内容的CDN(例如Cloudinary)
> pm2用于进程负载平衡

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读