nodejs多进程基本知识
1. 创建多进程的模块
1.1 child_process
1.2 cluster
2. 创建多进程的方法
2.1 child_process有4种方法:
1. spawn: 创建子进程,执行非node程序,执行结果以流形式返回
2. execFile: 创建子进程,执行非node程序,执行结果以回调返回
3. exec: 创建子进程,执行shell命令,执行结果以回调返回,可以直接执行一串shell命令
4. fork: 创建子进程,执行node程序,执行结果以流返回
2.2 cluster有1种方法:
cluster.fork:创建一个子进程
3. nodejs多进程模型
nodejs的多进程是master-work模式,一个主进程中,创建出多个子进程
4. 进程间消息传递
通过on('message')监听和send分发
5. 多个work监听同一个端口
nodejs中的多个work进程可以同时监听同一个端口。具体实现方式,child_process和cluster有区别。
5.1 child_process方式
child_process通常在master进程中创建socket或server,通过send方法将socket或server,发送到worker进程,在worker进程中同时监听一个端口
5.2 cluster方式
cluster通过cluster.isMaster和cluster.isWorker来区分主进程和worker进程,在worker进程中,可以直接启动server,来监听同一个端口
cluster主要是提供了对多个子进程的管理,子进程的创建、退出和重启,可以方便的进行。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
2017-04-29 循环注册事件的几种写法