Redis缓存技术的应用?-阿里云开发者社区

开发者社区> 数据库> 正文
登录阅读全文

Redis缓存技术的应用?

简介: Redis是一款免费开源的遵守BSD协议,是高性能的NOsql 缓存 Key-value数据库。Redis支持数据持久化,可以在将内存中的数据保持在词牌当中,重启后还可以再次加载进行使用,Redis支持简单的Key-valus类型数据,同时还提供了list set zset hash等数据结构的存储,同时还支持数据备份,即主从复制。

Redis是一款免费开源的遵守BSD协议,是高性能的NOsql 缓存 Key-value数据库。Redis支持数据持久化,可以在将内存中的数据保持在词牌当中,重启后还可以再次加载进行使用,Redis支持简单的Key-valus类型数据,同时还提供了list set zset hash等数据结构的存储,同时还支持数据备份,即主从复制。
Redis的经典应用场景:
1.缓存热点数据:热点数据(经常会被查询,但不是进场被修改或者删除的数据),首选是使用redis缓存,redis的性能非常优越。
2.计数器:诸如统计点击数,访问数,点赞数,评论数,浏览数等应用,由于单线程,避免了并发问题,保证数据的正确性,并且100%毫秒级性能,同时开启Redis持久化,以便于持久化数据。
3.单线程机制:验证前段的重复请求,可以自由扩展类似情况。可以通过redis进行过滤,比如,每次请求将request IP,参数,接口等hash作为key存储redis,设置多长时间有效期,然后下次请求过来的时候现在redis中检索有没有这个Key,进而验证是不是一定时间内过来的重复提交,在比如,限制用户登录次数,不如一天错误登录的次数不能高于多少个。秒杀系统,基于redis是单线程特征,防止出现数据库超卖,全局增量ID生成等,
4.排行榜:谁的分高谁的排名就靠前,比如点击率高,活跃度高,销售数量最高,投票最高的前10名排行等等。
5.分布式锁:使用redis可以实现分布式锁,为了确保分布式锁可用,至少确保锁的实现同时满足一下几个条件:互斥性在任何时刻,只有一个客户端能持有锁。不会发生死锁,即使有一个客户端在持有锁的期间崩溃而没有主动解锁,也能保证后续其他客户等能加锁,局域容错性,只能在大部分的Redis节点正常运行,客户就可以加锁和解锁。加锁和解锁必须是同一个客户端,客户端不能解他人加的锁。
6.:使用Redis的进行会话缓存是非常常见的一种场景,用Redis缓存会话比其他存储的优势在于:Redis提供持久化,目前大量方案都采用了redis作为Session的存储方案。
版权归属:转载请保留作者链接:irzhd.com

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
数据库
使用钉钉扫一扫加入圈子
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

其他文章