Node.js进程集群怎么实现


这篇文章主要介绍了Node.js进程集群怎么实现的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Node.js进程集群怎么实现文章都会有所收获,下面我们一起来看看吧。Node.js是单线程处理,对于高并发的请求怎么样能增加吞吐量呢?为了提高服务器的利用率,能不能多核的来处理呢?于是就有了cluster模块。cluster模块可以轻松实现运行在同一机器不同进程上的TCP或HTTP服务器集群。它们仍使用相同的底层套接字,从而在相同的IP地址和端口组合上处理请求。下面是它的一些事件属性和方法。事件:fork:当新的工作进程已经被派生时发出。callback函数接收worker对象作为唯一的参数。function(Worker)online:当新的进程发回一消息,表明它已经启动时发出。callback同上。listening:当工作进程调用listen()开始监听端口时发出。callback:fucntion(Worker,address)disconnect:当IPC通道被切断时发出。如服务器调用worker.disconnect()的时候。callback:function(Worker)exit:在Worker对象已断开时发出。callback:function(Worker,code,signal)setup:在setupMaster()被首次调用时发出。属性和方法:settings:包含exec(工作进程的javascript文件)、args(传递的参数数组)、silent(断开工作进程的IPC机制)属性值,用于建立集群isMaster:判断当前进程是否是主进程isWorker:判断当前进程是否是工作进程setupMaster([settings]):启动主进程disconnect([callback]):断开工作进程的IPC机制,并关闭句柄,当断开连接完成时回调worker:引用在工作进程的当前Worker对象workers:包含Worker对象,可以通过标识从主进程引用它们。cluster.workers[workerId]当一个工作进程被派时,一个新的Worker对象同时在主进程和工作进程中创建。在工作进程中Worker对象用来表示当前的工作进程,并与正在发生的集群事件进行交互。在主进程中,Worker对象代表子工作进程,是主应用程序向他们发送信息,接收它们的状态变化的事件甚至杀掉他们。它也是有一些事件属性方法。事件:messa免费云主机域名ge:在工作进程收到一个新信息时发出,回调函数把message作为唯一的参数值disconnect:在IPC通道已对这个工作进程断开后发出exit:Worker对象已经断开时发出error:工作进程发生错误时发出属性方法:id:工作进程标识Process:工作进程运行的ChildProcess对象suicide:对这个工作进程调用kill()或disconnect()时被设置为true。可以使用此标志来确定是否要跳出尝试的循环,并退出send(message,[sendHandle]):将消息发送到主进程kill([signal]):通过断开IPC通道杀掉当前工作进程,然后退出,将suicide设置为true。disconnect():工作进程调它时,关闭所有服务器,等待关闭事件,并断开IPC通道。当从主节点调时,发送一个内部消息给工作进程,使其断开本身,设置suicide为true。上面的也都是理论,下面通过实现一个HTTP集群来实践一下。1.主进程2.工作进程3.HTTP客户端测试首先是启动主进程,创建工作进程开始监听其次启动HTTP客户端测试关于“Node.js进程集群怎么实现”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“Node.js进程集群怎么实现”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注百云主机行业资讯频道。

相关推荐: redis分布式锁的坑有哪些

这篇“redis分布式锁的坑有哪些”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“redis分布式锁的坑有哪些”文章吧。使用redis的分布式锁,…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 03/19 17:21
下一篇 03/19 17:21

相关推荐