Redis 简介概述

Redis 简介概述

在这里插入图片描述

Redis概述

Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Map), 列表(list), 集合(sets)和有序集合(sorted sets)等类型。

Redis优点

1、 数据直接存储在缓存当中,读写速度快,性能极高, Redis能读的速度是110000次/s,写的速度是81000次/s 。
2、 支持丰富的数据类型,如 字符串(String), 哈希(Map), 列表(list), 集合(sets)和有序集合(sorted sets)等类型
3 、支持事务
4 、支持原子操作
5 、集群中有很好的数据同步机制

Redis缺点

1、 因为是NOSQL,难以支持复杂的数据关系

2、由于是内存数据库,所以单台机器存储的数据量跟机器本身的内存大小有关。虽然redis本身有key过期策略,但是还是需要提前预估和节约内存。如果内存增长过快,需要定期删除数据。(后边详细说淘汰策略)

3、如果进行完整重同步,由于需要生成rdb文件,并进行传输,会占用主机的CPU,并会消耗现网的带宽。不过redis2.8版本以后,已经有部分重同步的功能,但是还是有可能有完整重同步的。比如,新上线的从库。

4、修改配置文件后,需要进行重启,将硬盘中的数据加载进内存,时间比较久。在这个过程中,redis不能提供服务。

Redis支持数据类型

1、字符串(String)
1.1、string 是 redis 最基本的类型,一个 key 对应一个 value。
1.2、string 类型是二进制安全的。意思是 redis 的 string 可以包含任何数据。比如jpg图片或者序列化的对象。
1.3、string 类型的value最大能存储 512MB(Nosql可以说是支持的很大了)。
2、哈希(Map)
1.1、Redis hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象。
1.2、每个 hash 可以存储 232 - 1 键值对(40多亿)
3、列表(list)
1.1、列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)注:(这里确实很多人用这个特性做队列,但官方不建议)。
1.2、一个列表最多可以包含 232 - 1 个元素 (4294967295, 每个列表超过40亿个元素)。
4、集合(sets)
1.1、Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。
1.2、通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)。
1.3、集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿个成员)。
5、有序集合(sorted sets)
1.1、有序集合和集合一样也是string类型元素的集合,且不允许重复的成员。
1.2、不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。
1.3、有序集合的成员是唯一的,但分数(score)却可以重复。
1.4、集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。 集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿个成员)。

Redis使用场景简单举例

1 分布式锁
2 分布式session
3 流量接口的数据热备份
4 排行榜
5 某个计数,(某文章的点赞数量)
6 购物车。。。。 等等等等 以上一比较常见的几个场景

Redis简介总结

以上就是对redis缓存数据库的一个简单的认识和介绍,简单介绍的redis的优缺点,以及支持的数据结构和使用场景,后边我们会详细的介绍到redis的更多特性,以及某些场景的demo代码编写,便于更好的理解和使用redis。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值