Redis是一款NoSql(非关系型)数据库,实现了主从同步。
使用场景:
-
对数据高并发的读写。
-
海量数据的读写。
-
对数据的可扩展性的。
NoSql数据库举例:
-
Memcache:数据都在内存中,但是数据不持久化,而且只支持key-value,数据结构类型单一。
-
Redis:数据都在内存中,支持持久化,数据结构类型丰富(stirng,list,set,hash,zset)。
-
MongoDB:文档型数据库,支持二进制数据及大型对象。
读写效率极高,Redis采用的是单线程+多路IO复用技术,举例:
黄牛(Redis)是一个单线程去火车站(内存)买票(获取数据),可是对于这些用户1,2,3(请求)来说,虽然需要不同地方的票(不同的key),但是用户(请求)不需要在这里等待(阻塞),而是可以去完成其他的事情,等到黄牛买好对应地方的票(获取到key对应的键值),直接通知用户(去拿数据)即可。