我玩过的Redis场景

一、概述

  redis是现阶段程序员很熟悉的一个工具,人人都说它很强大,功能多,江湖上到处都流传着各种它的传说。而且,不论看哪个大牛的博客,还是牛B公司的设计架构,通通都有redis的身影。但是,在我工作经历当中,其实很多程序员并不会用redis,甚至很多时候是为了用而用,瞎JB用的比比皆是,让人唏嘘不已,悄悄的在背后不屑的说一句:臭SB。当然,笔者可能也是这些“臭SB”之中的一员,所以特此记录下我玩过的redis场景,为今后大家骂我提供文字依据。
PS : 我是个JAVA程序员,目前仅以JAVA语音进行记录。

二、使用场景

1、分布式session

瞎蛋逼:

  web系统中session的重要性不言而喻,原本session这个东西,是放在后台通过容器进行管理,可是随着项目业务越来越大,单一节点已经不能满足业务需求,系统开始向着集群化,分布式化发展。为了保证每一个节点的高可用,目前流行的都是把服务器做成无状态的服务器。这个时候就要考虑分布式session的问题了。在此我们不讨论IP_HASH啊,通过容器共享session这些方式。我们就说把session放到redis里这种操作。原理其实老简单了,不管用户通过何种方式进行的登录,不管用户通过那个节点登录的系统,只需要把session放到redis里就好了,这样用户之后的操作,都可以通过统一的redis拿到所需要的数据了。

怎么做

感谢万能的spring,有个工具叫spring-session-data-redis,用它,没跑。

2、分布式定时任务

setnx + expire。后台两个线程,一个抢锁,一个更新消失时间。

3、分布式锁

setnx。redlock(有spring boot 配套插件)

4、热数据缓存

没啥说的,最常用

5、保存静态页面

秒杀系统中,常用来把页面通过字符串形式保存在redis中

6、预处理

高并发系统,把要处理的数据提前放到redis中,先做运算,再放入MQ里排队

7、接口限流

每个接口预设置时间,和流量

8、共同好友

set 操作,交集,并集等

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,068评论 19 139
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 47,137评论 6 342
  • NOSQL类型简介键值对:会使用到一个哈希表,表中有一个特定的键和一个指针指向特定的数据,如redis,volde...
    MicoCube阅读 9,495评论 2 27
  • 今天折腾了一下ios真机调试,还有点曲折,不知道的童鞋(像我这样从来没有接触过iOS开发的)估计要试半天,网上搜的...
    Angeladaddy阅读 4,709评论 0 0

友情链接更多精彩内容