问题标签 [node-cluster]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
node.js - 带集群的 Firebase
我将 Node.js 与 Firebase 一起使用。我想通过使用 cluster-module 来使用所有的 cpu 核心。这两个一起工作吗?因为我已经将 firebase 节点与事件侦听器绑定,并且 Firebase 在 NodeJs 和 firebase 之间维护套接字。如何使用实例的所有 CPU (GAE)。
javascript - NodeJS 集群从配置文件中分配服务器端口
由于服务器配置在将端口分配给应用程序以进行侦听之前存储在 XML 文件中,因此我必须读取 XML 文件,将 XML 字符串输出转换为 JSON 以提高可读性。我还使用节点集群来使节点性能更好。下面是代码片段。
我现在面临的问题如上面的代码所示,我无法将从配置文件中获取的端口分配为服务器端口。该值在serverdetails(function(config) {}中可用。由于节点代码执行是异步的,因此该值在const server = app.listen(port, () => {中不可用。
任何人都可以提出解决此问题的解决方案吗?谢谢。
ignite - Ignite C++,服务器-客户端集群负载均衡性能问题
我有 2 个节点,我尝试在其中运行 4 个 ignite 服务器,每个节点上 2 个和 16 个 ignite 客户端,每个节点上 8 个。我正在使用复制缓存模式。我可以看到集群上的负载最终没有分配到所有服务器。
我每个节点有 2 个服务器的意图是将 8 个本地客户端的负载拆分到本地服务器,服务器可以在后面写入以在所有服务器之间复制数据。
但我可以注意到只有一台服务器正在承担负载,它以 200% 的 cpu 运行,而其他 3 台服务器的运行使用率非常低,约为 20% cpu。如何设置集群以最终将客户端负载分布在所有服务器上。提前致谢。
node.js - 节点的集群分叉
我不明白集群在 Node.js 中是如何工作的。
下面的代码片段是来自 Node 文档的示例代码。
我想知道到底发生了什么cluster.fork()
。它是否将任何变量复制到分叉的进程中?如果我在分叉之前声明了一个对象,两个线程都会访问它吗?是否可以手动将任务分配给线程,还是 Node必须这样做?
node.js - 从集群创建文件发送的任何集群进程中捕获的 Nodejs 事件
由于一个简单的事件相关问题,我被困在这里。这是问题:
- 我使用 cluster.js 和从 cluster.js 分叉的 server.js 创建了一个集群。
- 我从 cluster.js 中放置了一个计时器,每 1 分钟我触发一个事件“testTimer”。我使用了一个事件文件来做到
这一点。 - 我正在尝试
使用我已导入 server.js 并执行 .on('testTimer', callback) 的同一文件从子进程中捕获此事件“testTimer”
但是,在任何进程中都不会捕获事件。我尝试将事件设为全局并将事件全局分配给符号,但也无法使其工作/捕获事件。
这是代码:
cluster.js(子进程创建者)
server.js(子进程)
events.js(事件的公共文件)
node.js - nodejs - 对于在集群模式下运行的应用程序,我应该如何使用 nginx 和 pm2?
我已经给出了在我的应用程序中使用 nginx 和 pm2 的任务。我应该如何在集群模式下使用 pm2 运行的 nodejs 应用程序前面使用 nginx?
还了解到pm2本身提供了内置的负载均衡器,那我为什么要使用nginx呢?
javascript - Node.js 集群错误
您好,我对 node.js 和 javascript 非常陌生,我正在尝试使用 nodejs 集群模块创建一个 culster.js,在我的 if 语句结束时,我正在调用 server.js 来启动应用程序。
集群.js
服务器.js
我收到一个错误
任何想法为什么?
node.js - 节点集群和/或 Docker 集群?
尝试以尽可能少的设置从我的应用程序中获得最佳性能。
我正在努力在网上找到一个共识,即cluster
在 Docker 容器中使用 Node 模块还是使用 Docker 实例集群更好。
javascript - Websockets(ws) , NodeJs 集群,
我正在构建实时连接服务器。并希望使用节点集群对其进行扩展
我浏览了许多不同的网站,试图弄清楚如何实现 Websokets(ws) 和节点集群。所以我想尝试的基本想法是:我拥有连接到服务器的所有用户的数组,例如:{key:ws, key:ws,key:ws}
所以我想做的是用 Websockets 运行 Node js Clusters,我会得到类似的东西
Master:将所有连接的ws存储在数组中:{key:ws,key:ws,key:ws} Worker1:要连接的Ws服务器 Worker2:要连接的Ws服务器
我想知道的是,例如连接到 Worker2 的用户想要向连接到 Worker2 和 worker1 的用户发送消息。
所以我会从 Worker2 向 Master 发送消息以获取所有用户,Master 将发送 {key:ws(worker1), key:ws(worker2),key:ws}。Worker2 将遍历这个数组并向每个用户发送消息。该实现工作或消息是否不会发送给连接到另一个 Worker 的用户?
非常感谢您的回答。
node.js - 集群在 Windows 上失败
当我意识到 PM2 无法在 Windows 上运行时,我正在使用 PM2 以集群模式启动我的 Web 应用程序,我试图跟踪问题并意识到我的系统上的各种集群都失败了。
当我尝试启动任何集群节点应用程序时,它启动正常,直到发出第一个请求,然后其中一个子进程(分叉)死亡,应用程序停止响应 http 请求。
我编了一个最简单的例子来展示这个问题:
我运行这个例子
在发出第一个请求之前,输出为空,然后输出:
并且没有任何 fork 错误处理程序打印任何内容。
当我使用 pm2 (without if (cluster.isMaster)
part)运行类似的示例时,基本上会发生同样的事情,在这种情况下,在一个进程死亡后 pm2 会恢复它,但应用程序仍然不会响应 http 请求。
我使用的是8.1.2
64 位节点版本,该示例在 Ubuntu 上完美运行,我没有机会在不同的 Windows 机器上对其进行测试。
更新:我尝试使用 32 位版本的节点并且它有效,但仍然有兴趣解决它。