Node.js zmq nodejs模块推拉操作不正常。订户未正确接收消息
我在nodejs中有一个zmq发布者和订户代码。我的问题是,有时我的订户没有收到任何消息。下面是我的代码 出版商:Node.js zmq nodejs模块推拉操作不正常。订户未正确接收消息,node.js,sockets,zeromq,Node.js,Sockets,Zeromq,我在nodejs中有一个zmq发布者和订户代码。我的问题是,有时我的订户没有收到任何消息。下面是我的代码 出版商: var zmq = require('zmq'), socket = zmq.socket('push'), socket.bind(publisherUrl, function (err) { if (err) { console.log(err); } else { console.log("Listening on ..." + publisherUrl)
var zmq = require('zmq'),
socket = zmq.socket('push'),
socket.bind(publisherUrl, function (err) {
if (err) {
console.log(err);
}
else {
console.log("Listening on ..." + publisherUrl)
}
}))
订户:
var zmq = require('zmq'),
events = require('events'),
subscriber = zmq.socket('pull');
subscriber.on("message", function (reply) {
if (reply.toString() !== '{}'){
console.log("info", 'Received message:' + reply.toString());
}
})
subscriber.connect(publisherUrl)
它有时工作正常,但在某些情况下无法接收消息。我被困在这里,任何关于这方面的帮助都会非常有用。您的出版商应该是这样的:
var zmq = require('zmq')
var publisher = zmq.socket('pub')
publisher.bind('tcp://*:8688', function(err) {
if(err)
console.log(err)
else
console.log("Listening on 8688...")
})
for (var i=1 ; i<10 ; i++)
setTimeout(function() {
console.log('sent');
publisher.send("Hello there!")
}, 1000 * i)
process.on('SIGINT', function() {
publisher.close()
console.log('\nClosed')
})
var zmq = require('zmq')
var subscriber = zmq.socket('sub')
subscriber.on("message", function(reply) {
console.log('Received message: ', reply.toString());
})
subscriber.connect("tcp://localhost:8688")
subscriber.subscribe("")
process.on('SIGINT', function() {
subscriber.close()
console.log('\nClosed')
})
资料来源:
var zmq = require('zmq')
var subscriber = zmq.socket('sub')
subscriber.on("message", function(reply) {
console.log('Received message: ', reply.toString());
})
subscriber.connect("tcp://localhost:8688")
subscriber.subscribe("")
process.on('SIGINT', function() {
subscriber.close()
console.log('\nClosed')
})