Sockets 将ZeroMQ事件流式传输回客户端
我有一个用例,我希望有一个ZeroMQ请求/应答套接字“流式”返回结果,这是否可能与多部分消息(即,应答套接字在HasMore=false之前将帧流式返回)有关,或者我的做法是否错误 情况: 1) 客户机对某些记录进行查询(请求) 2) 服务器查找数据库中的结果,并将当前的大量记录(回复)拆分为多个帧进行响应 3) 在发送最终帧之前,服务器必须等待服务器端事件生成(HasMore=false) 4) 在生成最终事件且HasMore=false之前,客户端不会获取之前的帧Sockets 将ZeroMQ事件流式传输回客户端,sockets,zeromq,Sockets,Zeromq,我有一个用例,我希望有一个ZeroMQ请求/应答套接字“流式”返回结果,这是否可能与多部分消息(即,应答套接字在HasMore=false之前将帧流式返回)有关,或者我的做法是否错误 情况: 1) 客户机对某些记录进行查询(请求) 2) 服务器查找数据库中的结果,并将当前的大量记录(回复)拆分为多个帧进行响应 3) 在发送最终帧之前,服务器必须等待服务器端事件生成(HasMore=false) 4) 在生成最终事件且HasMore=false之前,客户端不会获取之前的帧 谢谢你的帮助。据我所知,
谢谢你的帮助。据我所知,你的目标是什么,听起来你所拥有的东西会按你所期望的方式工作。要点:
- 正如您所说,所有帧将一次性发送到客户端,它们将存储在服务器上,直到
设置为HasMore
false
- 这里需要记住的一件重要事情是,如果数据量确实很大,则必须能够将整个数据集放入内存中,因为它将存储在服务器内存中,直到包含所有帧的整个消息完成,然后在客户端处理之前将其接收到内存中