首页 > 其他 > 详细

Rredis的安装与核心原理

时间:2020-07-23 09:12:02      阅读:82      评论:0      收藏:0      [点我收藏+]

一、Redis的安装

1、下载与解压

 wget http://download.redis.io/releases/redis-5.0.3.tar.gz

 tar xzf redis-5.0.3.tar.gz 

2、编译与安装

# 进入到解压目录
cd redis-5.0.3 # 进入到解压好的redis-5.0.3目录下,进行编译与安装 make
# 修改 redis.conf 里的 daemonize 为 yes;(使用 ?daemon 搜索)
vi redis.conf
# 启动并指定配置文件
src
/redis-server redis.conf

3、验证Redis的启动

# 验证启动是否成功 
ps -ef | grep redis 

# 进入redis客户端 
src/redis-cli 

# 退出客户端
quit

 退出redis服务:
(1)pkill redis-server
(2)kill 进程号
(3)src/redis-cli shutdown

二、Redis的五种数据结构

技术分享图片

1、字符串 String

1.1 String的常用命令

常用操作

  • SET key value                        //存入字符串键值对
  • MSET key value [key value ...]   //批量存储字符串键值对
  • SETNX key value                        //存入一个不存在的字符串键值对
  • GET key                                      //获取一个字符串键值
  • MGET key [key ...]                      //批量获取字符串键值
  • DEL key [key ...]                         //删除一个键
  • EXPIRE key seconds                 //设置一个键的过期时间(秒)

原子加减

  • INCR key                           //将key中储存的数字值加1
  • DECR key                         //将key中储存的数字值减1
  • INCRBY key increment     //将key所储存的值加上increment
  • DECRBY key decrement   //将key所储存的值减去decrement

1.2 应用场景

单值缓存

   SET key value
 GET key

对象缓存
   (1) SET user:1 value(json格式数据)
   (2) 需要存储记录: id=1,name=zhangsan,balance=1888,使用批量存储的方式,如下:

        批量存入:MSET user:1:name zhangsan  user:1:balance 1888
        批量获取:MGET user:1:name user:1:balance

分布式锁

  SETNX 作用:若key不存在,则执行成功返回1;若key存在,则执行失败返回0;
    SETNX product:10001 true //返回1代表获取锁成功
  SETNX product:10001 true //返回0代表获取锁失败
    ... 执行业务操作 ...
  DEL product:10001 //执行完业务释放锁

  SET product:10001 true ex 10 nx //防止程序意外终止导致死锁设置超时时间

计数器
    INCR article:readcount:{文章id} 
  GET article:readcount:{文章id}

技术分享图片

 

Web集群session共享
   spring session + redis实现session共享

分布式系统全局序列号
   INCRBY orderId 1000 //redis批量生成序列号并放入到应用的内存中提升性能

2、哈希 hash

 2.1 hash 的常用命令

Hash常用操作
       HSET key field value              //存储一个哈希表key的键值
   HSETNX key field value            //存储一个不存在的哈希表key的键值
   HMSET key field value [field value ...] //在一个哈希表key中存储多个键值对
   HGET key field                    //获取哈希表key对应的field键值
   HMGET key field [field ...]       //批量获取哈希表key中多个field键值
   HDEL key field [field ...]        //删除哈希表key中的field键值
   HLEN key                          //返回哈希表key中field的数量
   HGETALL  key                      //返回哈希表key中所有的键值

   HINCRBY key field increment       //为哈希表key中field键的值加上增量increment

2.2 应用场景

 

 

3、列表 list

 

4、结合 set

 

5、有序集合 zset

 

Rredis的安装与核心原理

原文:https://www.cnblogs.com/yufeng218/p/13363470.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!