当我们有多个客户的多个请求时处理请求

时间:2018-08-09 07:56:02

标签: node.js rest heroku architecture

我正在heroku平台上开发节点服务,该服务将接受来自不同客户端的请求,但一次只能处理10个请求。 收到请求后,我们将写入数据库,然后一次处理10。 当多个服务器向该服务发送请求时,我想在客户之间平均分配线程。例如,客户A发送了1万个请求,B发送了5K个请求,C发送了100个请求。

  1. 我们需要为3个客户平均分配线程。 2.完成客户C的请求后,我想将线程平等地分配给A和B。 3.B完成后,仅到达A。
  2. 如果我们收到任何其他客户的请求,则需要拆分线程。 谁能帮我写这个算法。

谢谢

1 个答案:

答案 0 :(得分:0)

在节点JS中,我们可以使用process environment variable。使用进程Env变量,您可以确定一个进程应使用多少个端口,如果收到更多请求,则可以减小变量值,如果某个进程完成,则可以增大变量值。

process.env.variable_name = 'Value';

您可以在任何过程中访问此值并在任何过程中进行更新。此过程的值在所有过程中始终相同。

console.log(process.env.variable_name);