Redis 速览

数据淘汰策略

redis 内存数据量升到必定大小的时候,就会施行数据淘汰策略。redis 提供 6种数据淘汰策略mysql

  • voltile-lru:从已设置过时时间的数据集(server.db[i].expires)中挑选最近最少使用的数据淘汰(推荐)redis

  • volatile-ttl:从已设置过时时间的数据集(server.db[i].expires)中挑选将要过时的数据淘汰(推荐)sql

  • volatile-random:从已设置过时时间的数据集(server.db[i].expires)中任意选择数据淘汰(不推荐)数据库

  • allkeys-lru:从数据集(server.db[i].dict)中挑选最近最少使用的数据淘汰(推荐)dom

  • allkeys-random:从数据集(server.db[i].dict)中任意选择数据淘汰(不推荐)code

  • no-enviction(驱逐):禁止驱逐数据(不推荐)cdn

Redis 事务

跟其余数据库同样, Redis 也提供了事务机制server

在 redis 事务中,因此的命令都将串行化顺序执行。 和关系型数据库中的事务不一样,在 redis 事务中若是某个命令执行失败,后面的命令依然会被执行blog

事务相关命令

  • 开启事务multi 在该命令以后的全部命令都会被存到命令队列中,直到你提交事务后,命令队列中的命令开始被原子化执行
  • 提交事务exec
  • 回滚事务discard

Redis 的多数据库

就像一个 mysql 中能够建立多个数据库同样,一个 redis 实例也能够包含多个数据库。队列

一个 redis 实例 最多有 16 个数据库,每一个数据库还有对应的下标,下标从 0 到 15

客户端链接时,须要指定链接到那个数据库,若是不指定,默认链接到下标为 0 的数据库

链接到指定数据库后,才能够执行跟数据相关的各类命令

经常使用命令

  • 选择要链接的数据库select 2 选择下标为2的数据库
  • 移动键到另外一个数据库move 键 数据库下标 例如 move name 1 表示将 name 移动到 1 号数据库
相关文章
相关标签/搜索