我们有一个 node.js 服务器,它实现了一个 REST API 作为中央服务器的代理,它有一个稍微不同的,不幸的是不对称的 REST API。
我们的客户端在各种浏览器中运行,它要求节点服务器从中央服务器获取任务。节点服务器从中央服务器获取所有任务 ID 的列表并将它们返回给客户端。然后,客户端通过代理对每个 id 进行两次 REST API 调用。
据我所知,这些东西都是异步完成的。在控制台日志中,当我启动客户端时,它看起来像这样:
Requested GET URL under /api/v1/tasks/*: /api/v1/tasks/
这需要几秒钟才能从中央服务器获取列表。一旦它得到响应,服务器很快就会把它吐出来:
Requested GET URL under /api/v1/tasks/id/:id :/api/v1/tasks/id/438
Requested GET URL under /api/v1/workflow/id/:id :/api/v1/workflow/id/438
Requested GET URL under /api/v1/tasks/id/:id :/api/v1/tasks/id/439
Requested GET URL under /api/v1/workflow/id/:id :/api/v1/workflow/id/439
Requested GET URL under /api/v1/tasks/id/:id :/api/v1/tasks/id/441
Requested GET URL under /api/v1/workflow/id/:id :/api/v1/workflow/id/441
然后,每次这些请求中的一对从中央服务器获得结果时,另外两行很快就会被吐出。
所以看起来我们的 node.js 服务器一次只愿意发出六个请求。