zoukankan      html  css  js  c++  java
  • Redis单机实现

    Redis服务器

    • 由多个redisDb对象组成,一个redisDb就是一个数据库,一般默认16个,可通过select index切换,数量可配置。
    • redisDb中用一张字典表保存数据库中的所有键值对。
      • 键都是字符串对象。
      • 值是五种对象之一。
    • 取值时通过键值获取值对象,再返回值对象嵌套的字符串对象值。

    键过期时间的实现

    • redis除了有一张字典表保存所有键值对,还有一张过期表保存所有键的过期时间
    • 判断一个键是否过期是通过当前时间戳和过期字典中的时间戳来做对比。

    • 过期策略三种(redis使用23种配合)

      1. 定时删除:设置一个过期键的同时设置一个定时器在到期后执行删除操作。内存友好,cpu不友好。

      2. 惰性删除:获取一个键时判断是否过期,过期则删除。内存不友好,cpu友好。
      3. 定期删除:定期遍历过期字典表,把过期键删除。难点是把握操作频率和时长。
    • 对持久化的影响
      • RDB:进行RDB的时候会判断键是否过期,过期的不会被写入RDB文件中。载入时,也会对过期键检测,过期键不会被载入。
      • AOF:AOF时不会判断键是否过期,它只会在该键被删除时新增一条del命令。
      • AOF重写时会过滤掉已过期的命令。
  • 相关阅读:
    物料清单概述
    java开发webservice的1种方式
    java web service简单示例
    IOS证书过期
    Windows 2012 R2 安装net4.6.1
    sqlserver 性能调优脚本
    solidty--owner.sol
    ERC20-USDT
    EOS 公开节点及自有节点部署
    微信第三方平台授权流程
  • 原文地址:https://www.cnblogs.com/indecy/p/12252445.html
Copyright © 2011-2022 走看看