====== Redis 服务 ======
[[https://redis.io/docs/getting-started/|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:修改 /etc/redis/redis.conf 文件, "requirepass " 并重启服务
- 方法2:''%%CONFIG set requirepass ""%%''
客户端连接
redis-cli -h serverfin -p 6379
serverfin:6379> AUTH "138629"
serverfin:6379> subscribe maichannel // 认证后才允许订阅频道
===== 订阅与发布 =====
// 订阅
redis 127.0.0.1:6379> SUBSCRIBE
// 发布
redis 127.0.0.1:6379> PUBLISH "messa...."
===== Node.js 使用 =====
[[https://docs.redis.com/latest/rs/references/client_references/client_nodejs/|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();
}
});