[英]Listening event in client side zeromq - node.js
我在网络分析中使用zeromq来实时获取日志通知。
详细信息:我正在读取日志文件(Web分析日志文件)。 每当修改日志文件时,都将对其进行读取。 与ubuntu中的尾巴相同。 我正在将zeromq用于pub-sub事件。
示例服务器端:
var zmq = require('zmq');
var socket = zmq.socket('pub');
socket.bind('tcp://127.0.0.1:2001', function(error) {
if (error) {
console.log(error);
}
var fs = require("fs");
fs.watchFile(config.filePath, function (curr, prev) {
socket.send("file updated");
});
var socket = zmq.socket('sub');//Have to be ported to client side
socket.connect('tcp://127.0.0.1:2001');
socket.subscribe('');
socket.on('message', function(msg){
console.log('work: %s', msg);
});
});
我的问题是如何在客户端(javascript)中监听事件,以及如何在客户端中要求zmq?
我是zeromq的新手。 任何帮助将是巨大的。
这里有许多node.js的客户端示例...
https://github.com/imatix/zguide/tree/master/examples/Node.js
为什么服务器上有订户代码? 这只是一项健康检查吗?
var socket = zmq.socket('sub');
socket.connect('tcp://127.0.0.1:2001');
socket.subscribe('');
socket.on('message', function(msg){
console.log('work: %s', msg);
});
这可能与您的问题无关,但是我认为如果有人从ØMQ或zguide获取示例时遇到问题,我将添加此内容。
如果您正在此页面上运行服务器-客户端示例(或通过您选择的语言运行的类似示例):
http://zguide.zeromq.org/js:_start
并且它不起作用,然后尝试查看此页面:
https://github.com/imatix/zguide/tree/master/examples
并尝试使用您选择的语言的示例之一。 这极大地帮助了我,到目前为止(所有示例)在第一次尝试中都是有效的!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.