安装(windows系统)
-
点击安装默认选项下一步
-
测试redis安装成功
进入目录C:\Program Files\Redis
。
输入 redis-cli 并回车。
如图正常提示进入,并显示正确端口号,则表示服务已经启动。
安装(CentOS7系统)
- 安装 epel 仓库
yum install epel-release -y
- 安装 redis 数据库
yum info redis
yum install redis -y
- 启动 redis 服务
systemctl start redis # 当下启动redis服务
systemctl restart redis # 重启redis服务
systemctl enable redis # 设置为开机启动redis服务
- 进入redis客户端测试安装成功
redis-cli
Redis简单认识
Redis是一个key、value数据库。
类型有 字符串(String), 哈希(Map), 列表(list), 集合(set) 和 有序集合(sorted set)等。
- 字符串操作
新增字符串: set key value
设置并加过期时间: set key value EX 30 表示 30 秒后过期
获取数据: get key
设置过期时间: expire key 20 表示指定的 key5 秒后过期
对应的nodejs操作
var redis = require("redis"),
client = redis.createClient(6379,'127.0.0.1');
var userinfo={
username:'zhangsan',
age:'20'
};
client.set('userinfo',JSON.stringify(userinfo));
client.get('userinfo',(err,result)=>{
console.log(JSON.parse(result))
});
- 列表操作
列表右侧增加值: rpush key value
列表左侧增加值: lpush key value
右侧删除值: rpop key
左侧删除值: lpop key
获取数据: lrange key
对应的nodejs操作
var redis = require("redis"),
client = redis.createClient(6379,'127.0.0.1');
client.rpop('userlist');
// 0,-1表示读取位置0到最后一个位置
client.lrange('userlist',0,-1,(err,data)=>{
if(err){
console.log(err);
return;
}
console.log(data);
})
- 集合(set)/有序集合(sorted set)操作
给集合增数据: sadd key value
删除集合中的一个值: srem key value
获取数据: smembers key
- 哈希(Map)操作
设置值 hmset : hmset zhangsan name "张三" age 20 sex “男”
设置值 hset : hset zhangsan name "张三"
获取数据: hgetall key
- Redis订阅发布操作
可以多台机器发布,多台机器进行订阅。
发布方:
var redis = require("redis"),
client = redis.createClient(6379,'127.0.0.1');
client.publish('频道1', '消息1');
client.publish('频道2', '消息2');
订阅方:
var redis = require("redis"),
client = redis.createClient(6379,'127.0.0.1');
client.subscribe('频道1');
client.subscribe('频道2');
client.on('message',(channel,msg)=>{
console.log(channel,msg)
})
Redis在NodeJS中常用场景
- 缓存数据库或者接口请求的数据
对数据进行JSON序列化,然后以字符串形式存入Redis。
网友评论