《Redis实战》读书笔记

来源:互联网 发布:那些斗图是用什么软件 编辑:程序博客网 时间:2024/05/22 02:22

第一章:初识Redis

  • Redis的五种数据结构
    • STRING 可以存放字符串、整数、浮点数等等。
      • 常用指令:
        • GET 获取给定键的值
        • SET 设定给定键的值
        • DEL 删除给定键的值
    • LIST 单链表,插入删除等操作
      • 常用命令:
        • RPUSH将给定的值推入列表的右端
        • LPUSH将给定的值推入列表的左端
        • RPOP从列表右端弹出元素
        • LPOP从列表左端弹出元素
        • LINDEX给定位置的元素
        • LRANGE获取给定范围的元素
    • SET 集合元素不重复,无序排列
      • 常用命令:
        • SADD 将给定元素添加到集合
        • SMEMBERS 返回集合中包含的所有元素
        • SISMEMBER 判断给定元素是否在集合中
        • SREM 如果给定元素在集合中,就移除
        • SINTER
        • SUNION
        • SDIFF 集合操作
    • HASH 相当于STL的map,存储的键值对
      • 常用命令:
        • HSET hash-key sub-key value
        • HGET hash-key sub-key
        • HDEL hash-key sub-key
        • HGETALL hash-key
    • ZSET 有序键值对,值必须为浮点型
      • 常用命令:
        • ZADD
        • ZRANGE
        • ZRANGEBYSCORE
        • ZREM

第二章使用Redis构建Web应用:

  • 处理cookie信息
  • 实现购物车
  • 网页缓存
  • 数据行缓存
  • 网页分析

第三章Redis命令

  • 字符串
    • 自增、自减命令
      • INCR key-name 将键存储的值加上1
      • DECR
      • INCRBY
      • DECRBY
      • INCRBYFLOAT
    • 子串金额二进制位操作命令
      • APPEND
      • GETRANGE
      • SETRANGE
      • GETBIT
      • SETBIT
      • BITCOUNT
      • BITOP
  • 列表
    • 元素操作
      • RPUSH
      • LPUSH
      • RPOP
      • LPOP
      • LINDEX
      • LRANGE
      • LTRIM
    • 阻塞式列表命令
      • BLPOP
      • BRPOP
      • RPOPLPUSH
      • BRPOPLPUSH
  • 集合
    • 元素操作命令
      • SADD
      • SREM
      • SISMEMBER
      • SCARD
      • SMEMBERS
      • SRANDMEMBER
      • SPOP
      • SMOVE
    • 集合操作,并交补差
      • SDIFF
      • SDIFFSTORE
      • SINTER
      • SINTERSTORE
      • SUNION
      • SUNIONDTORE
  • 散列
    • 添加和删除键值对的命令
      • HMGET
      • HMSET
      • HDEL
      • HLEN
    • 更高级命令
      • HEXITS
      • HKEYS
      • HVALS
      • HGETALL
      • HINCRBY
      • HINCRBYFLOAT
  • 有序集合
    • 常用:
      • ZADD
      • AREM
      • ZCARD
      • ZINCRBY
      • ZCOUNT
      • ZRANK
      • ZSCORE
      • ZRANGE
    • 范围型数据获取、删除命令和并交命令
      • ZREVRANK
      • ZREVRANGE
      • ZRANGEBYSCORE
      • ZREVRANGEBYSCORE
      • ZINTERSTORE
      • ZUNIONSTORE
  • 发布与订阅
    • SUBSCRIBE
    • UNSUBSCRIBE
    • PUBLISH
    • PSUBSCRIBE
    • PUNSUBSCRIBE
  • 其他命令
    • SORT
    • 事务的概念
      • MULTI
      • EXEC
    • 键的过期时间
      • PERSIST
      • TTL
      • EXPIRE
      • EXPIREAT
      • PTTL
      • PEXPIRE
      • PEXIREAT

第四章数据安全与性能保障

  • 持久化
    • 快照持久化
      • 创建快照的方法:
        • BGSAVE 子进程
        • SAVE 中断服务,单进程
        • 配置save选项,多个条件中有一个被触发时,即进行持久化
        • SHUTDOWN/TREM
        • SYNC命令
    • AOF持久化 append-only file
      • 配置参数
        • always
        • everysec
        • no
  • 复制
    • Redis复制的启动过程(五步)
      • 不支持主主复制
    • 主从链(从服务器还连接一个从服务器)
    • 检验硬盘写入
      • INFO命令
  • 处理系统故障
    • 验证快照文件和AOF文件
      • redis-check-aof
      • redis-check-dump
    • 更换故障主服务器
  • Redis事务
    • ACID属性(与关系型数据库相同的概念)
    • 网上游戏商店的demo
    • 非事务性流水
      • python中使用pipe = conn.pipeline(False)创建非事务性流水
      • 目的是减少通信次数

第五章 使用Redis构建支持程序

  • 使用Redis来记录日志
    • 最新日志
      • 利用链表存储
    • 常见日志
  • 计数器和统计数据
    • 对计数器进行更新
    • 清理旧计数器
  • 使用Redis存储统计数据
  • 查找IP所属城市已经国家
  • 服务的发现和配置

使用Redis构建应用程序组建


第8章构建简单的社交网站

  • 用户和状态
    • 用户信息
    • 状态信息
    • 主页时间线
  • 关注者列表和正在关注列表
  • 状态消息的发布与删除
  • 流API
    • 流API提供的数据
    • 提供数据
      • HTTP流服务器
      • 标识客户端
      • 处理HTTP流
    • 对流消息进行过滤
      • 对状态晓得发布操作与删除操作进行更新
      • 接受并过滤流消息
      • 过滤消息

第9章 降低内存占用

  • 短结构
    • 压缩列表表示
    • 集合的整数集合编码
    • 长压缩列表和大整数集合带来的性能问题
  • 分片结构
    • 分片式散列
    • 分片集合
  • 打包存储二进制位和字节
    • 决定被存储位置信息的格式
    • 对分片的数据进行聚合
    • -
0 0
原创粉丝点击