目录

Redis 服务

Redis Docs 按照官方说明ubuntu系统下进行安装就好。

安装与访问

前台启动服务 redis-server 按 ctrl + c 即可终止服务。后台启动使用

systemctl start redis-server
systemctl status redis-server
systemctl stop redis-server
systemctl restart redis-server
// 或者
service redis-server restart

访问服务器 (mac也就是客户端 本地redis服务也需要启动)

redis-cli // 访问本地
redis-cli -h serverfin -p 6379

加密访问

设置密码:

  1. 方法1:修改 /etc/redis/redis.conf 文件, “requirepass <password>” 并重启服务
  2. 方法2:CONFIG set requirepass "<pw>"

客户端连接

download

redis-cli -h serverfin -p 6379
serverfin:6379> AUTH "138629"
serverfin:6379> subscribe maichannel // 认证后才允许订阅频道

订阅与发布

// 订阅
redis 127.0.0.1:6379> SUBSCRIBE <channelname>
// 发布
redis 127.0.0.1:6379> PUBLISH <channelname> "messa...."

Node.js 使用

Redis with Node.js

var redis = require('redis');

var client = redis.createClient("6379", "127.0.0.1", {auth_pass: "yoursecret"});
client.on('connect', function () {
    //client.hset("hash key", "field 1", "v1", redis.print);
    //client.hget("hash key", "field 1", redis.print);
    //client.quit();
});

var client1 = redis.createClient("6379", "127.0.0.1", {auth_pass: "yoursecret"});
client1.on('connect', function () {
    client1.subscribe("channel");
});
client1.on("message", function (channel, message) {
    console.log("普通订阅接收到来自" + channel + "的信息:" + message);
    if (message == "demo") {
        client.publish("demo","demo msg");
    }
    if (message == "quit1") {
        client1.unsubscribe("channel");
        console.log("普通订阅操作已经取消");
        //client2.quite();
    }
});

var client2 = redis.createClient("6379", "127.0.0.1", {auth_pass: "yoursecret"});
client2.on('connect', function () {
    client2.psubscribe("channel*");
});
client2.on("pmessage", function (p, channel, message) {
    console.log("批量订阅接收到来自" + channel + "的信息:" + message);
    if (message == "quit2") {
        client2.punsubscribe("channel*");
        console.log("批量订阅操作已经取消");
        //client2.quite();
    }
});