一、Redis基本概念介绍和特性
1.1 Redis基本概念介绍
1.Redis是远程的,有客户端和服务端,我们一般说的是服务端;
2.Redis是基于内存的,所以比基于硬盘的MySQL要快很多,但非常吃内存
3.Redis是非关系型数据库。本质上也是数据库,但MySQL关系型数据库存储时必须定义数据词典,而Redis则不需要。
1.2 Redis 和 Memcached比较
Redis数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。
与Memcached一样,为了保证效率,数据都是缓存在内存中。区别的是Redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。
1.3 Redis支持主从同步。
数据可以从主服务器向任意数量的从服务器上同步,从服务器可以是关联其他从服务器的主服务器。这使得Redis可执行单层树复制。存盘可以有意无意的对数据进行写操作。由于完全实现了发布/订阅机制,使得从数据库在任何地方同步树时,可订阅一个频道并接收主服务器完整的消息发布记录。同步对读取操作的可扩展性和数据冗余很有帮助。
二、Redis的应用场景
2.1 缓存
Redis常常作为数据缓存。
当某些系统接口比较慢的时候,我们可以把一些数据放在Redis中缓存起来,下次取数据就不进行非常耗时的SQL操作了,直接从缓存中取数据,提升系统性能最常用的方法之一;
2.2 队列
push和pop操作保证了原子性的实现;
2.3 数据存储