我有两个.js
文件 -pub.js
用于发布和sub.js
订阅。这些文件实际上是node-nanomsg GitHub 站点上显示的示例的“拆分”版本。pub.js
写入和tcp://127.0.0.1:7789
读取sub.js
相同。我sub.js
先开始,然后pub.js
。虽然pub.js
很快完成,但sub.js
从未收到消息。
pub.js
var nano = require('nanomsg')
var pub = nano.socket('pub')
pub.bind('tcp://127.0.0.1:7789')
//
pub.send('Hello')
pub.close()
sub.js
var nano = require('nanomsg')
var sub = nano.socket('sub')
sub.connect('tcp://127.0.0.1:7789')
//
sub.on('data', function(buf) {
console.log(String(buf))
sub.close()
})
更新
如果pub.js
写如下并sub.js
首先启动,则通信通过。
var nano = require('nanomsg')
var pub = nano.socket('pub')
pub.bind('tcp://127.0.0.1:7789')
//
setTimeout(() => {
pub.send('Hello')
},2000)
//pub.close()
但是,发布-订阅范式不需要发布者和订阅者相互了解。如何启用 pub-sub 系统nanomsg
?