一:速度快
Redis所有数据是存放在内存中的,
Redis源代码采用C语言编写,距离底层操作系统更近,执行速度相对更快,
Redis使用单线程架构,避免了多线程可能产生的竞争开销,
二:基于K_V的数据结构
三:功能相对丰富
Redis对外提供了键过期的功能,可以用来实现缓存,
提供了发布订阅功能,可以用来实现简单的消息系统,解耦业务代码,
支持Lua脚本,
提供了简单的事务功能(不能rollback),
提供了Pipeline功能,客户端能够将一批命令一次性传输到Server端,减少了网络开销。
四:简单稳定
Redis源码共六万行,但是不代表它不稳定
五:客户端语言多
Redis提供了简单的TCP通信协议,这样使得很多编程语言可以很方便的接入Redis
六:持久化
Redis提供两种持久化方案AOF和RDB
七:主从复制
八:高可用和分布式
Redis从2.8版本正式提供了高可用实现哨兵模式,可以保证Redis节点的故障发现和故障自动转移,
Redis从3.0版本后开始支持集群模式