我正在使用带有redis存储的socket.io。我从socket.io网站获取以下代码。
var io = require('socket.io')(server);
var redis = require('socket.io-redis');
io.adapter(redis({host: '128.199.122.183', port: 6379}));
io.on('connection', function (socket) {
socket.emit('news', { hello: 'world' });
socket.on('my other event', function (data) {
console.log(data);
});
});
代码按预期运行但我希望看到一些条目(键值对)在redis中制作但没有找到任何条目。谁能告诉我如何检查socket.io是否正在使用redis?
答案 0 :(得分:3)
当前的socket.io-redis
包不会在数据库中存储任何内容(尽管将来可能会更改)。它使用redis pub / sub机制在不同节点之间分发消息。
要检查它是否正常工作,您需要启动应用程序的多个实例,然后在其中一个实例上发出消息,并检查是否所有其他实例都在接收它。
您还可以使用redis-cli查看其是否正常工作。
redis-cli
>MONITOR
然后发出一些消息。