美文网首页
Redis简介 命令

Redis简介 命令

作者: Minzou丶怪兽 | 来源:发表于2018-09-18 14:14 被阅读0次

Redis 安装

redis_安装.png

图中展示的是3.0.7 可以选择安装 或者去Redis官网 安装最新版本

Redis特性

  1. 速度快 10W OPS
  2. 单线程
  3. 数据持久化(RDB AOF)
  4. 高可用分布式
  5. 缓存系统
  6. 主从复制

Redis通用命令

  • keys 遍历出所有的key keys * keys [pattern] keys ph? 问号代表一位 O(n)
  • dbsize 数据库大小 内置计数器 O(1)
  • exists key 检验key是否存在 返回 1 0
  • del key [key ...] 删除key 可以删除多个
  • expire key seconds 设置key存在的时间 用于缓存的时候
    1. pexpire key ttl 将键的生存时间设为 ttl 毫秒
    2. expireat key timestamp 将键的过期时间设为 timestamp 所指定的秒数时间戳
    3. pexprieat key timestamp 将键的过期时间设为 timestamp 所指定的毫秒数时间戳.
  • type key 查看key的类型 不存在的返回none
  • ttl 查询key过期时间 返回 -2 已经过期删除 -1 存在key没有过期时间
  • persist 取消过期时间

Redis 数据类型

  1. String
    • value 可以是 "world",1,bits,json串 最大512M 100K以内
    • 使用场景 缓存、计数器、分布式锁
    • 命令
      1. get key
      2. set key value
      3. del key
      4. incr,decr,incrby,decrby
      5. set setnx setxx
      6. mget mset
      7. getset append strlen
      8. incrbyfloat getrange setrange


        String_getset.png
string_incrbyfloat.png string_mget.png string_set.png stringcrby.png
  1. Hash
    • 特点 value -> field属性 value
    • 命令
      1. hget,hset,hdel
      2. hexists,hlen
      3. hmget,hmset
      4. hincrby
      5. hgetall,hvals,hkeys
      6. hsetnx hincrby hincrbyfloat


        hash_hexists.png
hash_hget.png hash_hgetall.png hash_hmget.png hash_hsetnx.png
  1. List
    • 特点 value -> 有序的、可重复的队列
    • 命令
      1. rpush,lpush,linsert,lpop,rpop,lrem,ltrim
      2. lrange,lindex,llen
      3. lset
      4. blpop brpop


        list_blpop.png
list_lindex.png list_linsert.png list_lpush.png list_lrange.png list_lrem.png list_lset.png list_ltrim.png list_rpush.png
  1. 集合
    • 特点 无序 不允许重复元素 集合间操作
    • 命令
      1. sadd srem
      2. scard sismember srandmember smembers
      3. spop sinter sdiff sunion


        set_sadd.png
set_scard.png set_sdiff.png set_spop.png
  1. 有序集合
    • 特点 有序
    • 命令
      1. zadd score可以重复 element 不可以重复
      2. zrem,zscore,zincrby,zcard
      3. zrange,zcount,zremrangebyrank,zremrangebyscore
      4. zrevrank zrevrange


        zset_order_show.png
zset_total.png zset_zcount.png zset_zrange.png zset_zremrangebyscore.png zset_zrerangebyrank.png zset.png

其他功能

  1. 慢查询
  2. pipeline
    1. 流水线-解决N次网络操作 浪费的时间“
  3. 发布订阅
  4. bitmap
    • setbit getbit bitcount bitop bitpos
  5. hyperloglog
    • 极小的空间 完成独立用户统计 本质还是字符串
    • 命令
      1. pfadd key element [element ...] 添加元素
      2. pfcount key [key ...] 计算hyperloglog的独立总数
      3. pfmerge destkey sourcekey [sourcekey ...] 合并多个hyperloglog
    • 是否容忍错误 是否需要独立数据 是否需要小内存存独立用户
  6. geo
    • GEO是什么-地理信息定位 存经纬度 计算两地距离 范围计算
    • type 是个zset
    • 命令
      1. geoadd key longitude latitude memeber
      2. geopos key memeber[memeber ...]
      3. geodist key memeber1 member2 [unit](m km mi ft)
      4. georadius


        georadius.png

Redis语言客户端

  1. Jedis (JAVA客户端)
  2. redis-py (Python客户端)
  3. redigo (Go客户端)

相关文章

网友评论

      本文标题:Redis简介 命令

      本文链接:https://www.haomeiwen.com/subject/rogynftx.html