我可以使用 XSUB/XPUB zeromq 模式并为每条消息添加一个 timestamp/sequence 数字吗
Can I use an XSUB/XPUB zeromq pattern and add a timestamp/sequence number to each message
我正在使用 zeromq 创建通用动态图设置。我已经有一个 XPUB/XSUB 设置,但我想知道是否有一种 zmq 方法可以将序列 number/timestamp 添加到代理生成的每条消息中,以便拥有唯一排序的事件“磁带”?
Q : "... but am wondering if there is a zmq way of adding ... to each message ...?"
不,没有。 ZeroMQ 的方法是使用零复制和 (几乎) 零延迟来完成此操作。
您想要的用例不存在这种方式。
解决方案?可行:
创建一个转换节点,其中每条消息都会相应地进行转换(添加了 SEQ 编号和时间戳数据 { pre | ap }-pended )。这样的步骤需要一个人实现这样一个节点并处理所有这些步骤,每个事件都有任何例外。
现成的 API 记录的 zmq_proxy()
根本没有也不能也不应该涵盖这些特定要求,因为它是为其他目的而设计的(并且使用零拷贝来最有效的传递 + ev. 有效的 MITM-logger 服务模式)。
我正在使用 zeromq 创建通用动态图设置。我已经有一个 XPUB/XSUB 设置,但我想知道是否有一种 zmq 方法可以将序列 number/timestamp 添加到代理生成的每条消息中,以便拥有唯一排序的事件“磁带”?
Q : "... but am wondering if there is a zmq way of adding ... to each message ...?"
不,没有。 ZeroMQ 的方法是使用零复制和 (几乎) 零延迟来完成此操作。
您想要的用例不存在这种方式。
解决方案?可行:
创建一个转换节点,其中每条消息都会相应地进行转换(添加了 SEQ 编号和时间戳数据 { pre | ap }-pended )。这样的步骤需要一个人实现这样一个节点并处理所有这些步骤,每个事件都有任何例外。
现成的 API 记录的 zmq_proxy()
根本没有也不能也不应该涵盖这些特定要求,因为它是为其他目的而设计的(并且使用零拷贝来最有效的传递 + ev. 有效的 MITM-logger 服务模式)。