对于Redis的基本了解

什么是Redis?

Redis 是一个使用 C 语言写成的,开源的 key-value 数据库和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set –有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。

Redis有什么应用场景?

1,会话缓存(最常用)
最常用的一种使用Redis的情景是会话缓存(session cache)。用Redis缓存会话相对于其他存储(如Memcached)的优势在于:Redis提供持久化。

2,消息队列,例如支付
Reids在内存存储引擎领域的一大优点是提供 list 和 set 操作,这使得Redis能作为一个很好的消息队列平台来使用。Redis作为队列使用的操作,就类似于本地程序语言(如Python)对 list 的 push/pop 操作。

3,活动排行榜或计数
Redis在内存中对数字进行递增或递减的操作实现的非常好。集合(Set)和有序集合(Sorted Set)也使得我们在执行这些操作的时候变的非常简单。

4,发布,订阅消息(消息通知)
Redis有发布/订阅功能,redis的发布与订阅(发布/订阅)是它的一种消息通信模式,一方发送信息,一方接收信息。如:当三个客户端同时订阅同一个频道时,有新信息发送给频道1时,就会将消息发送给订阅它的三个客户端。

Redis与Memcached的区别与比较

1 、Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,zset,hash等数据结构的存储。memcache支持简单的数据类型String

2 、Redis支持数据的备份,即master-slave模式的数据备份。

3 、Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用,而Memecache把数据全部存在内存之中

4、 redis的速度比memcached快很多

5、Memcached是多线程,非阻塞IO复用的网络模型;Redis使用单线程的IO复用模型

Redis持久化的几种方式

1、快照(snapshots)
  缺省情况下,Redis把数据快照存放在磁盘上的二进制文件中,文件名为dump.rdb。
2、AOF

RDB持久化是将进程数据写入文件,而AOF持久化(即Append Only File持久化),则是将Redis执行的每次写命令记录到单独的日志文件中(有点像MySQL的binlog);当Redis重启时再次执行AOF文件中的命令来恢复数据。

与RDB相比,AOF的实时性更好,因此已成为主流的持久化方案。
  快照模式并不十分健壮,当系统停止,或者无意中Redis被kill掉,最后写入Redis的数据就会丢失。这对某些应用也许不是大问题,但对于要求高可靠性的应用来说,Redis就不是一个合适的选择。Append-only-File文件模式是另一种选择。你可以在配置文件中打开AOF模式
  
3、虚拟内存方式
  当你的key很小而value很大时,使用VM的效果会比较好.因为这样节约的内存比较大.

Redis(Remote Dictionary Server)是一个开源的基于内存的数据存储系统,它支持键值对(Key-Value)的存储。Redis具有高性能、高可用性和丰富的数据类型,被广泛应用于缓存、消息队列、计数器等场景。 Redis的数据模型是简单的键值对模型,每个键都与唯一的值相关联。Redis支持多种数据类型,包括字符串(String)、哈希(Hash)、列表(List)、集合(Set)和有序集合(Sorted Set)等。这些数据类型使得Redis能够处理各种不同的数据结构和操作。 Redis具有以下特点: 1. 高性能:Redis将数据存储在内存中,并且使用高效的数据结构和算法来提供快速的读写操作。 2. 持久化Redis支持数据持久化,可以将数据保存到磁盘上,以防止数据丢失。 3. 高可用性:Redis提供了主从复制和哨兵机制,确保系统的高可用性和故障恢复能力。 4. 分布式:Redis Cluster支持数据的分片和分布式存储,以满足大规模应用的需求。 5. 发布订阅:Redis支持发布订阅模式,可以用于构建实时消息系统或事件驱动的应用。 Redis适用于需要快速读写操作和高并发访问的场景,如缓存、会话管理、实时分析等。它也可以作为其他数据库(如关系型数据库)的辅助存储,提供更高效的数据访问。Redis具有简单易用的API和丰富的客户端库,支持多种编程语言(如Java、Python、Node.js)的集成。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值