大佬教程收集整理的这篇文章主要介绍了在所有 CPU 内核上运行 NodeJS 以实现最大的硬件潜力,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
硬件:
我在具有 4 核 cpu 和 6GB RAM 的 VMware Workstation 上运行 Ubuntu 20.04 虚拟机
问题:
我一直在寻找如何提升我的 NodeJs 服务器,其中一个解决方案是利用我现在正在做的处理器的所有 cpu 内核。
这是我名为 server.Js 的入口文件:
const express = require("express");
const app = express();
app.use("/",async (res,req) => {
req.status(200).send('success');
});
app.Listen(4300);
在 pm2
的帮助下,我产生了最大数量的集群 pm2 start server.Js -i max
并且我正在实现此日志:
在 autocAnnon
的帮助下,我将此服务器定位为“DDoS”类型,以监控处理多个并发请求的效果。
代码如下:
const cAnnon = require('autocAnnon')
const localHost = 'http://localhost:4300'
async function startmockUp() {
let result = await cAnnon({
url: localHost,// target url
connections: 10000,pipelining: 1,duration: 10 // seconds
})
console.log('request',result.requests)
}
startmockUp()
这是第一次运行的输出:
现在我正在尝试做同样的事情,但只运行一个集群:
得到这个结果:
如您所见,除了单个集群能够处理更多请求之外,我并没有实现运行 4 个并发集群的 x4 加速。
为什么会这样?
我做错了吗?
是否有解决方法来获得更好的结果?
考虑使用 cluster to fork off the processes。这是在一台机器上使用多个节点实例的标准方法。我的想法是,按照您启动流程的方式,只有一个实例实际处理请求。
以上是大佬教程为你收集整理的在所有 CPU 内核上运行 NodeJS 以实现最大的硬件潜力全部内容,希望文章能够帮你解决在所有 CPU 内核上运行 NodeJS 以实现最大的硬件潜力所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。