Redis初步使用指南

2019-06-03  本文已影响0人  草珊瑚_6557

安装(windows系统)

  1. 下载Redis
    https://github.com/MicrosoftArchive/redis/releases

  2. 点击安装默认选项下一步

  3. 测试redis安装成功
    进入目录C:\Program Files\Redis
    输入 redis-cli 并回车。
    如图正常提示进入,并显示正确端口号,则表示服务已经启动。

安装(CentOS7系统)

  1. 安装 epel 仓库
yum install epel-release -y
  1. 安装 redis 数据库
yum info redis
yum install redis -y
  1. 启动 redis 服务
systemctl start redis  # 当下启动redis服务
systemctl restart redis  # 重启redis服务
systemctl enable redis  # 设置为开机启动redis服务
  1. 进入redis客户端测试安装成功
redis-cli

Redis简单认识

Redis是一个key、value数据库。
类型有 字符串(String), 哈希(Map), 列表(list), 集合(set) 和 有序集合(sorted set)等。

  1. 字符串操作
新增字符串: 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))
});  
  1. 列表操作
列表右侧增加值: 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);
})
  1. 集合(set)/有序集合(sorted set)操作
给集合增数据: sadd key value
删除集合中的一个值: srem key value
获取数据: smembers key
  1. 哈希(Map)操作
设置值 hmset : hmset zhangsan name "张三" age 20 sex “男”
设置值 hset : hset zhangsan name "张三"
获取数据: hgetall key
  1. 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中常用场景

  1. 缓存数据库或者接口请求的数据
    对数据进行JSON序列化,然后以字符串形式存入Redis。
上一篇下一篇

猜你喜欢

热点阅读