什么redis?
redis 也就是 Remote Dictionary Server ,是基于内存的(这点很重要)、可选持久化(途径是RDB、AOF)的日志型Key-value数据库编写,并提供多种语言的API。
redis的特点
1、高性能
redis数据存储在内存中,因此能够提供极快的读写操作。他的执行操作采用单线程的模式,并且为了防止在一个客户端连接未执行成功时,又出现多个客户来请求 从而造成的IO阻塞问题,而使用多路复用。
2、数据结构多样
redis支持多种数据结构,包括:字符串、列表、集合、有序集合、哈希,并且这些数据类型都支持丰富的操作,比如基本的增删改查和判断是否存在、获取总量等。而且这些操作都是原子性的。
3、持久化支持
redis将数据存储在内存中,以保证高速的读写操作,同时可以将内存中的数据周期性的写入磁盘或记录追加操作,来实现可持久化。redis提供了两种持久化的方式 一种是快照,一种是日志,也就是我们常说的RDB和AOF。
4、优秀的架构模式
redis支持三种集群模式,分别是主从模式、哨兵模式、Cluster模式,他们产生的主要目的是为了:数据库的备份和读写分离、提高可用性和故障自动切换、高并发和数据分散处理。
5、事务支持
redis的操作都是原子性的(原子性:就是一组操作要么都执行,要么都不执行)。
redis的性能非常高,根据官方数据,Redis 的 QPS 可以达到约 100000(每秒请求数)。
总结一下说,Redis是一个高性能、多功能的Key-Value数据库,可以用于数据库、缓存等。