Redis学习笔记四、redis的重要性

一、什么是Redis

1、Redis是Remote Dictionary Server(远程字典服务器)的缩写,最初是作为数据库的工具来使用的。是目前使用广泛、高效的一款开源缓存。

2、Redis使用C语言开发,将数据保存在内存中,可以看成是一款纯内存的数据库,所以它的数据存取速度非常快。

3、一些经常用并且创建时间较长的内容,可以缓存到Redis中,而应用程序能以极快的速度存取这些内容。

使用Redis将这个页面缓存起来,从而减轻了网站的负担,降低了网站的延迟。

4、Redis通过键-值对(Key-Value Pair)的形式来存储数据,类似于Java中的Map映射。

  1. Redis的Key键,只能是string字符串类型。
  2. Redis的Value值类型包括:string字符类型、map映射类型、list列表类型、set集合类型、sortedset有序集合类型。

5、Redis的主要应用场景:

缓存(数据查询、短连接、新闻内容、商品内容等)

分布式会话(Session)

聊天室的在线好友列表、任务队列(秒杀、抢购、12306等)

应用排行榜、访问统计、数据过期处理(可以精确到毫秒)。

二、为什么Redis 成为缓存标准

1、速度快 不需要等待磁盘的IO,在内存之间进行的数据存储和查询。缓存的数据总量不能太大,受到物理内存空间大小的限制。

场景:数据库的查询比较耗时,而使用缓存能大大节省数据访问的时间。假如表中有2千万个用户信息,在加载用户信息时,一次数据库查询大致的时间在数百毫秒级别。这仅仅是一次查询,如果是频繁多次的数据库查询,效率就会更低。

解决方法:把数据加入缓存,每次加载数据之前,先去缓存中加载,如果为空,再去查询数据库并将数据加入缓存,这样可以大大提高数据访问的效率。

2、丰富的数据结构 string 、list、hash、set、sortedset 五种类型。

3、单线程,避免线程切换和锁机制的性能消耗。

4、可持久化 支持RDB与AOF两种方式,将内存中的数据写入外部的物理存储设备。

5、支持发布/订阅。

6、支持Lua脚本。

7、支持分布式锁 在分布式系统中,不同的节点需要访同到一个资源,需要通过互斥机制来防止彼此干扰,并且保证数据的一致性。

原理上与Java的锁实现不同线程之间的同步访问是类似的。

8、支持原子操作和事务Redis事务是一组命令的集合。

一个事务中的命令要么都执行,要么都不执行。

如果命令在运行期间出现错误,不会自动回滚。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值