Node.js的ZeroMQ请求/响应模式

时间:2017-06-08 12:46:54

标签: zeromq

我正在为项目实现分布式系统,我对如何正确实现Req / Res模式感到困惑。基本上我有一些端点会向客户端发送请求以处理任务和响应。

基本上是这样的:

  1. 收到传入请求
  2. 端点使用代理
  3. 打开req和res套接字类型
  4. 经纪人收到请求,将其代理给可用的工作人员
  5. 工作人员响应并且端点接收已处理的值,并通过端点向其报告。
  6. 我在这里找到了一个不错的负载均衡代理脚本:http://zguide.zeromq.org/js:lbbroker。我还有一个我想要实现的异步客户端/服务器模式:http://zguide.zeromq.org/js:asyncsrv我可以适应负载均衡的实现。

    我的问题可能有点简单但是,每个端点是否会在每个请求上打开一个新套接字,或者为每个请求维护和打开套接字?这意味着每次向端点发出请求都会有n个连接。

1 个答案:

答案 0 :(得分:0)

你要保持套接字打开,每次请求后都不需要关闭套接字。每个端点(客户端和服务器)都有一个插槽。在服务器端,您从套接字读取请求,并将您的响应写回套接字; zmq负责确保响应从正确的客户端返回。