【问题标题】:Nodejs ZMQ monitoring socketsNodejs ZMQ 监控套接字
【发布时间】:2015-08-26 23:34:35
【问题描述】:

我得到了这段代码,用于监控 nodejs 的 zmq 绑定中的套接字。到目前为止它有效,但我的问题是我不知道监控套接字有什么事件。我得到的代码只是这样做,我会继续寻找更多的代码,但这就是我到目前为止所拥有的...... ``

var zmq = require('zmq');
var socket = zmq.socket('pub');
socket.connect('tcp://127.0.0.1:10001');
socket.monitor();

我尝试添加一个“onmessage”事件处理程序,但它什么也没显示,所以..我不知道是怎么回事..

socket.on("message",function(msg){
    console.log(msg);
});

【问题讨论】:

    标签: node.js sockets monitoring zeromq monitor


    【解决方案1】:

    我打印了从 monitor() 函数返回的对象,并从中获得了一些监视器事件,但我认为它并不优雅,我得到了测试套接字监视器功能的链接(@ 987654321@ ) 但有些东西不起作用但是...

    mon.monitor();
    console.log(mon);
    mon.on("message",function(msg){
        console.log(msg);
    });
    mon.on('close',function(){console.log("Closed");});
    mon._zmq.onMonitorEvent = function(evt){
        if (evt == 1)
            console.log("Should be 1 : "+ evt);
        else
            console.log(evt);
    };
    

    【讨论】:

      【解决方案2】:

      我没有使用 0mq 中的 PUB/SUB 处理程序。我使用过其他一些类型并且相当熟悉。没有测试过这段代码,我的建议是

      SCRIPT 1:您现有的 PUB 脚本,需要发送消息

        socket.send('TEST_MESSAGES', 'BLAH')
      

      脚本 2:需要添加:

      var zmq = require('zmq');
      var sub_socket = zmq.socket('sub');
      sub_socket.connect('tcp://127.0.0.1:10001');
      sub_socket.subscribe('TEST_MESSAGES')
      sub_socket.on("message",function(msg){
          console.log(msg);
      });
      

      这里的诀窍是时机。 0mq 不会给你重试或持久消息。您需要自己构建这些元素。不过,如果您将发布放在计时器中(为了让示例运行),您应该会看到消息移动。

      【讨论】:

      • 所以我不想获取消息事件。我想从在 pub 套接字上调用 monitor() 后添加的 onMonitorEvent 获取事件。我设法进行了破解,但它肯定不优雅,我正在查看 git 所有者拥有的一些示例代码,但他的一些脚本不起作用.. :( mon.monitor(); console.log(mon ); mon.on("message",function(msg){ console.log(msg); }); mon.on('close',function(){console.log("Closed");}); mon ._zmq.onMonitorEvent = function(evt){ if (evt == 1) console.log("应该是 1 : "+ evt); else console.log(evt); };
      猜你喜欢
      • 1970-01-01
      • 2023-03-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-26
      • 1970-01-01
      相关资源
      最近更新 更多