![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Redis
林老师带你学编程
www.wolzq.com
展开
-
redis分布式锁--》死锁问题解决策略研究
死锁场景redis分布式锁都不可避免会遇到死锁问题,我们先来讨论一下,什么场景会发生死锁问题。因为redis锁对应的key还在,如果不将redis锁对应的key删除,下次获取锁的时候还是会失败。redis integration原理有童鞋会说,那还不简单,重启的时候直接将redis锁对应的key删除不就可以了吗?当然不行,再讲这个问题之前,我们先来简单的看一下redis i...原创 2020-04-09 18:54:35 · 1765 阅读 · 0 评论 -
记一次redis cpu 100%的紧急bug
前段时间遇到一个棘手问题,mq消费速度突然从30/s变成1/s,而且还持续了很长的一段时间,吓得我赶紧动手排查问题。但是mq消费速度慢的原因,可能有很多种(例如mysql、jvm、redis、mq、代码问题等)。为了可以快速定位问题点,博主直接通过Arthas工具进行问题的排查和追踪。Arthas用法可以参照:https://mp.weixin.qq.com/s/FT1gKYDzczWa05x...原创 2019-12-30 22:03:16 · 1417 阅读 · 0 评论 -
redis反序列化出现:java.lang.ClassNotFoundException异常
不知道大家在使用redis的时候,有没有遇到过如下错误:java.lang.ClassNotFoundException,这个错误是因为反序列化时找不到对应的对象导致的。什么是序列化在开始今天的课程之前,我们先来介绍一下:什么是redis的系列化和反序列化。数据想要存入redis缓存之前,需要序列化为byte数组,从redis中取出数据,却是一个相反的过程,需要将byte数组反序列才...原创 2019-10-22 22:42:36 · 5504 阅读 · 0 评论 -
SpringBoot中使用redis事务
首先从使用springboot+redis碰到的一个问题说起。在前几篇文章中介绍了用SpringBoot+redis构建了一个个人博客。在刚开始远行的时候发现发了几个请求操作了几次redis之后,后面的就被阻塞了,请求一直在等待返回,我们重现一下问题。[注意] 该问题只会出现在springboot 2.0之前的版本;2.0之后springboot连接Redis改成了lettuce,并重新实现,...转载 2019-09-04 20:54:47 · 3009 阅读 · 1 评论 -
利用redis实现每日签到功能
今天给大家介绍一个简单的应用场景,我们迷你喵小程序最近新增了一个签到功能,但是每天只能签到一次,我们如何实现每日只签到一次呢?想学习分布式、微服务、JVM、多线程、架构、java、python的童鞋,千万不要扫码,否则后果自负~首先我们需要考虑一下几点:此类似的数据和时间、用户量成正比,越晚后面,数据量越大,会一直叠加。 用户签到操作,在一定场景下面并发量会很高,而且得考虑用户可...原创 2019-04-04 10:09:15 · 6358 阅读 · 2 评论 -
三张图秒懂Redis集群设计原理
Redis集群设计包括2部分:哈希Slot和节点主从,本篇博文通过3张图来搞明白Redis的集群设计。节点主从:主从设计不算什么新鲜玩意,在数据库中我们也经常用主从来做读写分离,直接上图: 图上能看得到的信息:1, 只有1个Master,可以有N个slaver,而且Slaver也可以有自己的Slaver,由于这种主从的关系决定他们是在配置阶段就要指定他们的上下级关系,...转载 2019-02-20 21:54:23 · 535 阅读 · 0 评论 -
【坑】Springboot+Redis序列化坑
今天在测试springboot整合redis的时候遇到下面这个坑,百度来百度去发现提示都是ajax的问题,真的是醉了,错误提示如下所示,不信大家可以直接复制百度一下答案是什么(流泪中。。。。),错误如下:org.springframework.data.redis.serializer.SerializationException: Could not read JSON: Unrecogni...原创 2018-07-25 21:45:06 · 11229 阅读 · 1 评论 -
【8大坑】重构springboot踩坑记录手册
今天本来想和大家说一下spring中bean的创建过程和生命周期的,可是因为项目重构过程中遇到好多的问题,卡来卡去,所以想和大家分享一下今天遇到的坑,希望大家可以少踩坑。项目场景:因为maven项目启动太笨重了,每次启动都需要好久的时间,还有项目中很多依赖都是不需要的,可是因为历史遗留问题一直都不能很好解决这个问题,所以这次趁改架构的机会一起优化了。所以将项目app请求层一个服务,业务请求一个服务...原创 2018-07-06 22:06:52 · 1564 阅读 · 0 评论 -
解决分布式表单重复提交问题
今天检查数据时候,发现有重复数据,意识到接口发生表单重复提交的问题了。然后赶紧学习一下怎么解决表单重复提交的办法,最后发现下面的这篇博客。博客地址:https://blog.csdn.net/zwb19940216/article/details/78151899一、为什么会出现重复提交?主要是由于网络的延迟问题以及页面刷新的操作。二、表单的重复提交会导致的问题?主要能够造成很多脏数据。三、解决的...原创 2018-07-11 20:23:13 · 2460 阅读 · 0 评论 -
Redis和Mongodb应用场景研究
现在的分布式项目基本都会用到redis和mongodb,可是redis和mongdb到底有什么不同呢,今天我就基于我们公司的项目来具体介绍一下redis和mongodb的各自的应用场景。首先我们这个项目中有两种应用场景:场景一:要求TPS(不知道的右转百度)特别高的,比如我们项目有一个点赞的功能,这个点赞的功能促发频率特别高,而且并发量也会特别大,但是它的数据量不会特别大。基于这种情况下,我们采用...原创 2018-06-17 21:48:51 · 9655 阅读 · 3 评论 -
jedisLock—redis分布式锁实现
一、使用分布式锁要满足的几个条件:系统是一个分布式系统(关键是分布式,单机的可以使用ReentrantLock或者synchronized代码块来实现)共享资源(各个系统访问同一个资源,资源的载体可能是传统关系型数据库或者NoSQL)同步访问(即有很多个进程同事访问同一个共享资源。没有同步访问,谁管你资源竞争不竞争)二、应用的场景例子 管理后台的部署架构(多台tomcat服务器+redis【多台...转载 2018-06-12 22:22:23 · 355 阅读 · 0 评论 -
Redis Sentinel高可用集群Java客户端
今天给大家介绍一下如何通过Java来set和get值到Redis Sentinel集群中。在开始之前我们首先要搭建一个Redis Sentinel集群环境,搭建过程这边我就不多介绍了,不会的可以去看我《Docker下面安装redis sentinel集群》这篇博客,里面已经介绍的很清楚了。redis集群环境:三个redis服务器,其中6379为master服务器,6380、6381是slave服务...原创 2018-03-10 16:41:32 · 633 阅读 · 0 评论 -
Redis集群环境中添加和删除节点
上一节中说道如何在window下面安装redis集群,今天给大家介绍一下如何在redis集群环境中添加和删除节点。首先是配置六个节点,三个为从节点,三个为主节点。配置信息如下所示:port 6380 #端口号loglevel notice #日志的记录级别,notice是适合生产环境的logfile "E:/softtools/redis-3.0.1/Logs/r原创 2017-07-11 18:02:36 · 798 阅读 · 0 评论