Redis —— Linux操作Redis

Redis —— Linux操作Redis

Redis简介

官网:redis.io

下载:Download/redis.io

命令查询:Redisdoc.com

Redis功能特性

  • 高速读写
  • 数据类型丰富
  • 支持持久化
  • 多种内存分配及回收策略
  • 支持事务
  • 消息队列、消息订阅
  • 支持高可用
  • 支持分布式分片集群

Redis、Memcache、Tair的比较

企业缓存数据库解决方案对比

Memcache

优点:高性能读写、单一数据类型、支持客户端式分布式集群、一致性Hash多核结构、多线程读写性能高

缺点:无持久化、节点故障可能出现缓存穿透、分布式需要客户端实现、跨机房数据同步困难、架构扩容复杂度高

Redis

优点:高性能读写、多数据类型支持、支持数据持久化、高可用架构、支持自定义虚拟内存、支持分布式分片集群、单线程读写性能极高

缺点:多线程读写较Memcache慢

Tair

tair是基于memcache开发的二次产品。

优点:高性能读写,支持三种存储引擎(ddb、rdb、ldb)、支持高可用、支持分布式分片集群、支撑了几乎所有淘宝业务的缓存。

缺点:单机情况下,读写性能较其他两种产品较慢。

总结

memcache适用于多个用户发起少量请求。

redis适用于单个用户发起多次请求

新浪微博应用的是redis,淘宝应用tair。双十一,提前一周将热数据放进tair。

对比测试

Redis中数据持久化

redis中数据持久化有两种方式

  • RDB
  • AOF:即Appended only file

RDB

实现方式

即可以在指定的时间间隔生成数据集的时间点快照(point-in-time snapshot)。

镜像方式持久化,内存中的数据结构直接映射到磁盘上。

是覆盖式的持久化方式,一般用来做备份。

注意:持久化的数据可能不是完整的。

配置文件

在conf文件中开启持久化,自动调用save命令

vim /etc/redis.conf
dbfilename dump.rdb    ---- 持久化文件后缀为rdb
dir /data/6379    
save 9000 1  ---- 9000秒,即15分钟内有一个变化(更改),该时间点做一次持久化
save 300 10  ---- 5分钟
save 60 10000  ---- 1分钟

三条不冲突,配置完后需要重启

AOF

实现方式

redis 2.x版本后才有,1.x版本没有

记录redis的每一条修改操作。到持久化文件中。

可以是一个实时的持久化方式。

追加形式持久化,数据可能是完整的(取决于配置)。

配置文件

appendonly yes/no
appendfsync always
# appendfsync everysec
# appendfsync no

appendonly yes/no:开关

appendfsync xxx:持久化策略,三选一

  • always:redis中有一个变化,就持久化一次
  • everysec:每秒持久化一次(性能相对较高,但一秒钟可能发生几千个变化,有可能丢失1秒钟的数据)。
  • no:不自动持久化,一般不会用。

总结

RDB和AOF可以同时开启。

一般企业用RDB,对数据安全要求高的企业会开启AOF。

 

 

 

Redis中的数据类型及操作

全局Key的操作

  • KEYS *
  • DEL KEY
  • EXITSS
  • RENAME
  • SORT
  • TYPE
  • DUMP RESTORE
  • EXPIRE \ PEXPIRE
  • TTL \ PTTL
  • PERSIST
  • RANDOMKEY  随机返回数据库中的任意键

 

String

方法

Hash

方法

List

方法

Set

方法

Order Set

方法

Redis集群

主从复制

Senitial

 

posted @ 2018-04-02 16:57  乖巧Clare  阅读(286)  评论(0)    收藏  举报