Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在一个Node.js服务器上使用多个WebSocket可以获得更高的性能吗?_Node.js_Performance_Websocket - Fatal编程技术网

在一个Node.js服务器上使用多个WebSocket可以获得更高的性能吗?

在一个Node.js服务器上使用多个WebSocket可以获得更高的性能吗?,node.js,performance,websocket,Node.js,Performance,Websocket,好的,伙计们,在Node.js服务器上生成多个websocket实例有用吗?我的意思是你可能也会创建子工作人员 我知道,这取决于你的硬件和网卡。但是,您是否可以仅通过一个任务达到此最大值,或者通过多个并行进程获得更高的性能?这取决于服务器中的CPU数量。并行进程(集群模块)并不是提高性能的灵丹妙药——在单CPU系统上,它们甚至可能仅仅因为开销而降低性能。但如果您有多个CPU,NodeJS进程就不能使用额外的马力。集群模块解决了这个问题。如果使用得当,您可以使用系统上所有可用的CPU电源 请注意,

好的,伙计们,在Node.js服务器上生成多个websocket实例有用吗?我的意思是你可能也会创建子工作人员


我知道,这取决于你的硬件和网卡。但是,您是否可以仅通过一个任务达到此最大值,或者通过多个并行进程获得更高的性能?

这取决于服务器中的CPU数量。并行进程(集群模块)并不是提高性能的灵丹妙药——在单CPU系统上,它们甚至可能仅仅因为开销而降低性能。但如果您有多个CPU,NodeJS进程就不能使用额外的马力。
集群
模块解决了这个问题。如果使用得当,您可以使用系统上所有可用的CPU电源


请注意,这与WebSocket本身无关。这是NodeJS的核心架构约束。但是WebSockets是一个很好的用例,其中集群是有利的…

您所说的“更高的性能”是什么意思?你关心什么样的精确测量?在大多数情况下,如果对服务器中的每个实际CPU使用最多一个进程的粘性集群,则可以提高服务器处理高负载的能力。根据您的具体情况,您可能还会遇到其他需要解决的瓶颈,例如网络带宽、同时连接的总数等。我指的是与cpu使用率相比的最大活动连接数。主要的问题是,如果我将服务器websockets绑定到服务器http端口,我能获得什么好处,或者什么样的系统能从中受益。如果你想最大限度地增加连接的套接字的数量,那就把它放在你的问题中。这一特定主题已经在许多其他文章中讨论过,您需要做的事情也高度依赖于您正在运行的操作系统。