redis学习笔记(1)—— redis简介
redis是什么?
Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。通常称为数据结构服务器;它存储了五种不同类型值的键映射。用作数据库,缓存和消息代理。
为什么要使用redis
如果有大量信息且信息基本不变的情况,如果每次都去查询数据库,会消耗很多资源,效率会低下很多。但是如果将这些大量数据存入到内存中,每次都先访问内存中是否有需要的数据,如果没有再去执行数据库查询指令,将大大提高系统的访问效率。
redis的优点
-
性能极高,Redis能支持每秒10万读写频率。
-
支持丰富的数据类型–Redis支持 string、list、set、zset(sorted set)、hash等多种数据类型。
-
原子性–Redis所有操作都是原子性的(一起成功,或者一起失败)。
-
Redis支持持久化操作,将内存数据同步到数据文件中。
-
Redis还提供了事务、消息传递等功能。
redis的缺点
-
由于是内存数据库,所以,单台机器,存储的数据量,跟机器本身的内存大小有关。虽然 redis 本身有 key 过期策略,但是还是需要提前预估和节约内存。如果内存增长过快,需要定期删除数据。
-
如果进行完整重同步,由于需要生成 rdb 文件,并进行传输,会占用主机的 CPU,并会消耗现网的带宽。不过 redis2.8 版本,已经有部分重同步的功能,但是还是有可能有完整重同步的。比如,新上线的备机。
-
修改配置文件,进行重启,将硬盘中的数据加载进内存,时间比较久。在这个过程中,redis 不能提供服务。
手动高亮tip
学习如逆水行舟,不进则退。本系列笔记将持续发布,如有问题可私信或留言。新的一年,希望能与大家共同进步!