zoukankan      html  css  js  c++  java
  • Redis系统学习之五大基本数据类型(String(字符串))

    String(字符串)

    存入值

    • set key value
    • image

    获取值

    • get key
    • image

    追加值(如果key不存在,相对于新建set)

    • append key value
    • image

    查看长度

    • strlen key
    • image

    实现计数器(浏览量,播放量可以存redis,最后持久化到Mysql)

    • 累加
      • incr key
    • 累减
      • decr key
    • image
    • 设置带步长的累加和累减
    • incrby key number || decrby key number
    • image

    截取字符窜

    • getrange key startindex endindex
    • 如果是-1,找不到就是全部的
    • image

    替换字符串

    • setrange key startindex value
    • startindex 从哪个下标开始替换 根据value的值决定替换几个字符
    • image

    设置过期时间

    • setex(set with expire)
    • setex key seconds value
      • 设置30秒过期
      • image

    不存在再设置(分布式锁)

    • setnx(set if not exists)
    • setnx key value
      • 返回1代表设置成功,返回0代表设置失败,只有删除后,才可以重新设置
      • image

    批量设值和批量取值

    • mset key value[k v循环,空格切分]
    • mget key[k循环,空格切分]
      • image

    批量设值nx(原子的)

    • msetnx key value[k v循环,空格切分]
      • 一个失败全部失败
      • image
    • 没有mgetnx

    先获取再设值

    • getset key value
    • 第一次没有,获取到是空的,并且把redis设值到db key->第二次是获取到redis并把Mongodb设值到db key
    • image

    使用场景:

    • value除了可以是字符串之外也可以是数字
    • 常用的计数器,浏览量等都可以采用string来做
    • 对象JSON存储
    • 案例
      • 设计用户的粉丝数量,关注数量,浏览数量
      • uid:382893:粉丝数量 0 有人关注后就 incr 有人取关就 decr
      • uid:382893:关注数量 0
      • uid:382893:浏览数量 0
      • 每隔一段时间可以持久化到Mysql

    作者:彼岸舞

    时间:202155

    内容关于:Redis

    本文属于作者原创,未经允许,禁止转发

  • 相关阅读:
    Linux 性能工具安装部署
    JVM 详解
    十大经典排序算法动画与解析
    Linux 安装Jdk、mysql、apache、php、tomcat、nginx
    使用mysqldump备份数据库
    Linux 安装 python3.6 ,并且配置 Pycharm 远程连接开发
    python安装途中遇到的问题和解决方法
    Linux安装python2.7、pip和setuptools
    SELENIUM如何调用FIREFOX时加载插件
    NOSQL之MEMCACHE
  • 原文地址:https://www.cnblogs.com/flower-dance/p/14731088.html
Copyright © 2011-2022 走看看