阅读量:0
优点:
- 速度快:数据存在内存中,类似于HashMap,HashMap的优势就是查找和操作的时间复杂度都是O(1)
- 支持丰富的数据结构:支持 String ,List ,Set ,Sorted Set ,Hash 五种基础的数据结构。
- 持久化存储:Redis 提供 RDB 和 AOF 两种数据的持久化存储方案,解决内存数据库最担 心的 万一 Redis 挂掉,数据会消失掉
- 高可用:内置Redis Sentinel,提供高可用方案,支持主从故障自动转移。
- 丰富的特性:Key过期、计数、分布式锁、消息队列等等。
- 由于Redis是内存数据库,所以,单台机器,存储的数据量和机器本身的内存大小有关。虽然Redis本身有Key过期策略,但是还是需要提前预估和节约内存,如果内存增长过快,需要定期删除数据,比较麻烦。
- 如果进行完整重同步,由于需要生成RDB文件,并进行传输,会占用主机的CPU,并会消现网的带宽。不过Redis2.8版本,已经有部分重同步的功能,但是还是有可能有完整重同步的。
- 会产生内存碎片。随着时间的推移和数据的频繁修改,Redis可能会出现内存碎片问题,这需要通过手动干预来整理内存碎片。
备份复杂:由于Redis的高性能特性,其备份过程需要更加谨慎,以确保不会影响到在线服务的性能。
- 修改配置文件,进行重启,将硬盘中的数据加载进内存,时间比较久。在这个过程中,Redis不能提供服务。