Node.js 如何访问worker';什么是排队的请求?
我正在使用nodejs实现一个web服务器,它必须服务于大量并发请求。当nodejs一个接一个地处理请求时,它会将它们保存在一个内部队列中(我猜是在libuv中) 我还想使用Node.js 如何访问worker';什么是排队的请求?,node.js,redis,cluster-computing,libuv,request-queueing,Node.js,Redis,Cluster Computing,Libuv,Request Queueing,我正在使用nodejs实现一个web服务器,它必须服务于大量并发请求。当nodejs一个接一个地处理请求时,它会将它们保存在一个内部队列中(我猜是在libuv中) 我还想使用集群模块运行我的web服务器,因此每个工作人员将有一个请求队列 问题: 如果有工作人员死亡,我如何检索其队列 请求 如何将检索到的请求放入其他工作人员的队列 是否有任何API可以访问活动工作人员的请求队列 第三,我希望将排队的请求保留在某个地方,比如Redis(如果可能的话),以便在服务器崩溃、故障甚至硬件重启的情况下,我可
集群
模块运行我的web服务器,因此每个工作人员将有一个请求队列
问题:
第三,我希望将排队的请求保留在某个地方,比如Redis(如果可能的话),以便在服务器崩溃、故障甚至硬件重启的情况下,我可以检索它们。正如您在标签中提到的,您已经在使用/想要使用Redis,您可以使用基于Redis的队列管理器为您完成所有工作 结帐(或它的替代方案)
bull
有一个queue
的概念。将作业添加到队列
,并从不同进程/vm侦听同一队列bull
将只向一个侦听器发送相同的作业,您可以控制每个侦听器同时处理的作业数量(并发级别
)
此外,如果其中一个作业无法运行(换句话说,队列的侦听器抛出了一个错误),bull
将尝试将相同的作业分配给不同的侦听器