Redis可以说是目前而言,应用最为广泛的一种nosql数据库,其广受欢迎必然有着其独有的优势。
优势一:速度快
redis为什么速度快呢?
最主要的原因就是redis是基于内存的。
Redis将所有的数据都放在内存中进行操作,纯内存访问,没有磁盘的I/O读取,自然就非常的快了。
redis内存读取
其次,redis是单线程的。
采用异步非阻塞的多路 I/O 复用,让单个线程高效的处理多个连接请求,减少了网络 IO 的时间消耗,且不存在多线程中线程切换竞争等问题造成的性能损耗。(注意:单线程仅仅指的是网络请求这一模块上用的单线程,整个redis的服务并不是单线程的)
另外还有就是用最贴近操作系统的C语言编写
以及优秀的数据结构和算法等也为速度做出了一定的贡献。
当然,最主要的原因还是基于内存这一点,其提升的速度跟其他因素相比不是一个量级的。
优势二:丰富的数据类型
redis提供了五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(s