Redis基础

1.什么是Redis?

Redis 本质上是一个 Key-Value 类型的内存数据库。整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据 flush 到硬盘上进行保存。
因为是纯内存操作,Redis 的性能非常出色,每秒可以处理超过 10 万次读写操作,是已知性能最快的 Key-Value 数据库。

2.为什么要用Redis?(Redis的优点)

  1. 速度快。数据都是在内存中,读取速度快。
  2. 支持丰富的数据类型。支持 String ,List,Set,Sorted Set,Hash(key-value,存储对象) 五种基础的数据结构。
  3. 丰富的特性。订阅发布 Pub / Sub 功能;Key 过期策略;事务;支持多个 DB;计数;Redis 5.0 增加了 Stream 功能,一个新的强大的支持多播的可持久化的消息队列。
  4. 持久化存储。Redis 提供 RDB 和 AOF 两种数据的持久化存储方案,解决内存数据库最担心的万一 Redis 挂掉,数据会消失掉的问题。
  5. 高可用。(保证系统能够同时并行处理很多请求)

3.Redis的基本数据类型有哪些?

String ,List,Set,Sorted Set,Hash
String 字符串
set
get

redis 127.0.0.1:6379> SET name aaa
OK
redis 127.0.0.1:6379> GET name
"aaa"

List 列表
lpush
lrange

redis 127.0.0.1:6379> LPUSH runoobkey redis
(integer) 1
redis 127.0.0.1:6379> LPUSH runoobkey mongodb
(integer) 2
redis 127.0.0.1:6379> LPUSH runoobkey mysql
(integer) 3
redis 127.0.0.1:6379> LRANGE runoobkey 0 10

1) "mysql"
2) "mongodb"
3) "redis"

Set 集合
sadd
smembers

redis 127.0.0.1:6379> SADD runoobkey redis
(integer) 1
redis 127.0.0.1:6379> SADD runoobkey mongodb
(integer) 1
redis 127.0.0.1:6379> SADD runoobkey mysql
(integer) 1
redis 127.0.0.1:6379> SADD runoobkey mysql
(integer) 0
redis 127.0.0.1:6379> SMEMBERS runoobkey

1) "mysql"
2) "mongodb"
3) "redis"

Sorted Set 有序集合
zadd
zrange

redis 127.0.0.1:6379> ZADD runoobkey 1 redis
(integer) 1
redis 127.0.0.1:6379> ZADD runoobkey 2 mongodb
(integer) 1
redis 127.0.0.1:6379> ZADD runoobkey 3 mysql
(integer) 1
redis 127.0.0.1:6379> ZADD runoobkey 3 mysql
(integer) 0
redis 127.0.0.1:6379> ZADD runoobkey 4 mysql
(integer) 0
redis 127.0.0.1:6379> ZRANGE runoobkey 0 10 WITHSCORES

1) "redis"
2) "1"
3) "mongodb"
4) "2"
5) "mysql"
6) "4"

Hash 哈希
hmset
hgetall

127.0.0.1:6379>  HMSET runoobkey name "redis tutorial" description "redis basic commands for caching" likes 20 visitors 23000
OK
127.0.0.1:6379>  HGETALL runoobkey
1) "name"
2) "redis tutorial"
3) "description"
4) "redis basic commands for caching"
5) "likes"
6) "20"
7) "visitors"
8) "23000"

4.Redis的使用场景

  • 数据缓存
  • 会话缓存
  • 时效性数据
  • 访问频率
  • 计数器
  • 社交列表
  • 记录用户判定信息
  • 交集、并集和差集
  • 热门列表与排行榜
  • 最新动态
  • 消息队列
  • 分布式锁

你可能感兴趣的:(Redis基础)