Node.js 集群模块的工作原理是什么
在本文中,我们将了解什么是集群模块以及它在node.js中的工作原理。让我们开始吧。
Node.js是一个使用JavaScript作为脚本语言的单线程机制。由于node.js是单线程的,它在处理内存方面更有效率,因为没有多个线程,所以不需要进行线程管理。现在为了高效处理工作负载并利用计算机多核系统的优势,创建了集群模块,它提供了创建与单个父进程同时运行的子进程的方式。每个子进程(更具体地说,工作进程)都有自己的事件循环、内存、V8实例,并共享相同的服务器端口。
语法: 以下是在你的node应用程序中引入集群模块的语法。
示例:
输出结果:
解释: 在上面的演示中,当应用程序运行时,首先我们检查进程是否为主进程,使用 cluster.isMaster 方法。如果进程是主进程,我们会使用 cluster.fork() 方法生成多个工作进程。工作进程的ID会被记录在控制台中。
以下是一些集群属性和方法-
- fork() :从主进程创建一个新的子进程。
- isMaster :如果当前进程是主进程则返回true,否则返回false。
- isWorker :如果当前进程是工作进程则返回true,否则返回false。
- process :返回全局的子进程。
- send() :从工作进程发送消息到主进程,或从主进程发送消息到工作进程。
- kill() :用于终止当前工作进程。
- isDead :如果当前工作进程已经结束则返回true,否则返回false。
- id :工作进程的唯一ID。
- settings :返回包含集群设置的对象。
- worker :返回当前工作进程。
- workers :返回该进程的所有工作进程。
- isConnected :如果当前工作进程与其主进程连接则返回true,否则返回false。
- disconnect() :断开所有工作进程的连接。
这是关于集群模块的全部内容,包括它们的用途、实现和不同的属性。