C++ 分析ZeroMQ

C++ 分析ZeroMQ,c++,queue,profiling,zeromq,C++,Queue,Profiling,Zeromq,关于ZeroMQ评测和调试的问题。 我想了解有关0MQ插座的两个信息。1队列长度和2消息的消息和消息总大小 我们是否可以在0MQ套接字中监控和记录上述信息?0MQ是否公开此类计数器?我认为,对我们来说,在0MQ之上构建的系统进行概要分析和调试是非常有用的。我们使用的是C++ API。 谢谢。不,抱歉,此视图不向用户程序公开。为什么? 原因是,所有ZeroMQ准则都在尽最大努力微调内部机制,以便让用户程序尽可能不承担底层职责,并将服务开销和延迟降至最低 如果真的需要接触到这样的富人: 也可以将这些

关于ZeroMQ评测和调试的问题。 我想了解有关0MQ插座的两个信息。1队列长度和2消息的消息和消息总大小

我们是否可以在0MQ套接字中监控和记录上述信息?0MQ是否公开此类计数器?我认为,对我们来说,在0MQ之上构建的系统进行概要分析和调试是非常有用的。我们使用的是C++ API。 谢谢。

不,抱歉,此视图不向用户程序公开。为什么? 原因是,所有ZeroMQ准则都在尽最大努力微调内部机制,以便让用户程序尽可能不承担底层职责,并将服务开销和延迟降至最低

如果真的需要接触到这样的富人: 也可以将这些用户端服务管理平面层分叉并添加到ZeroMQ数据泵的核心元素中

下一步可能的行动是保持原样核心实现,只需让每个套接字/队列通过一个简单的单用途燃气表代理连接并运行流量,该代理除了计算字节数、消息数和处理SUT正在使用的可能分布/聚合模式的所有机制之外,没有其他职责,以测量流量的1:1


前者的成本比后者高得多,但后者增加了端到端SUT偏差的更大部分,因为插入的延迟更高,并且空间{RX | TX}中的资源消耗也在增长-HWM队列+缓冲区和时间线程计数。

插入自定义代理套接字应该相当容易,以启用您需要的所有类型的诊断。谢谢。我认为这可能是唯一可行的解决办法。