李锋镝的博客 - LiFengdi.Com

  • 首页
  • 时间轴
  • 留言
  • 左邻右舍
  • 我的日常
  • 关于我
Redis
技术

Redisson分布式锁的watch dog自动续期机制

背景 据Redisson官网的介绍,Redisson是一个Java Redis客户端,与Spring 提供给我们的 RedisTemplate 工具没有本质的区别,可以把它看做是一个功能更强大的客户端(虽然官网上声称Redisson不只是一个Java Redis客户端) 我想我们用到 Redisson 最多的场景一定是分布式锁,一个基础的分布式锁具有三个特性: 互斥:在分布式高并发的条件下,需要保证,同一时刻只能有一个线程获得锁,这是最最基本的一点。 防止死锁:在分布式高并发的条件下,比如有个线程获得锁的同时,还没…

2023年1月5日 0条评论 299点热度 0人点赞 阅读全文
原创

Redis的主从同步及Redis Cluster(集群)下的高可用

Redis主从同步 数据可以从主服务器向任意数量的从服务器上同步,从服务器可以是关联其他从服务器的主服务器。这使得Redis可执行单层树复制。存盘可以有意无意的对数据进行写操作。由于完全实现了发布/订阅机制,使得从数据库在任何地方同步树时,可订阅一个频道并接收主服务器完整的消息发布 记录。同步对读取操作的可扩展性和数据冗余很有帮助。 工作原理: Redis的主从结构可以采用一主多从或者级联结构,Redis主从复制可以根据是否是全量分为全量同步和增量同步。  全量同步   Redis全量复制一般发生在Slave初始化…

2021年4月16日 0条评论 13703点热度 0人点赞 阅读全文
转载

为什么同样是分布式架构的Kafka需要Leader而Redis不需要?

Redis不需要Leader这个观点其实有歧义,是不准确的,题目的问题本质其实是涉及数据分片、数据复制一致性。 1、Redis Cluster 架构 在Redis3.0版本开始,Redis引入了一种去中心化的集群架构,采用预分片的模式,一个集群中所有节点总共对应16384个槽位,在对一个key进行写入时,首先对key取hashcode,然后求模来映射到具体的某一个节点,其部署架构如下图所示: 上述每一个节点中存储的数据都不一样,即每一个节点存储整体数据的一部分,并且为了实现去中心化每一个节点需要存储集群中所有key…

2021年3月22日 0条评论 13659点热度 0人点赞 阅读全文
技术

内存耗尽后Redis会发生什么?

作为一台服务器来说,内存并不是无限的,所以总会存在内存耗尽的情况,那么当 Redis 服务器的内存耗尽后,如果继续执行请求命令,Redis 会如何处理呢?   设置有效期 使用Redis 服务时,很多情况下某些键值对只会在特定的时间内有效,为了防止这种类型的数据一直占有内存,我们可以给键值对设置有效期。Redis中可以通过 4 个独立的命令来给一个键设置过期时间: expire key ttl:将 key 值的过期时间设置为 ttl 秒。 pexpire key ttl:将 key 值的过期时间设置为 t…

2021年3月3日 0条评论 13533点热度 1人点赞 阅读全文
技术

SpringBoot集成Redis,从Redis中获取数据为null,但实际上Redis中是存在对应的数据的,是什么原因导致的呢?

最近项目中使用SpringBoot集成Redis,踩到了一个坑:从Redis中获取数据为null,但实际上Redis中是存在对应的数据的。是什么原因导致此坑的呢? 本文就带大家从SpringBoot集成Redis、所踩的坑以及自动配置源码分析来学习一下SpringBoot中如何正确的使用Redis。 SpringBoot集成Redis 在SpringBoot项目中只需在pom文件中引入Redis对应的starter,配置Redis连接信息即可进行使用了。pom依赖引入: <dependency> <…

2021年1月19日 0条评论 14233点热度 3人点赞 阅读全文
技术

还不懂Redis?看完这个故事就明白了!

我是Redis 你好,我是Redis,一个叫Antirez的男人把我带到了这个世界上。 说起我的诞生,跟关系数据库MySQL还挺有渊源的。 在我还没来到这个世界上的时候,MySQL过的很辛苦,互联网发展的越来越快,它容纳的数据也越来越多,用户请求也随之暴涨,而每一个用户请求都变成了对它的一个又一个读写操作,MySQL是苦不堪言。尤其是到“双11”、“618“这种全民购物狂欢的日子,都是MySQL受苦受难的日子。 据后来MySQL告诉我说,其实有一大半的用户请求都是读操作,而且经常都是重复查询一个东西,浪费它很多时间…

2020年10月19日 0条评论 13563点热度 0人点赞 阅读全文
原创

Redis中缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级等问题

缓存雪崩 缓存雪崩我们可以简单的理解为:由于原有缓存失效,新缓存未到期间 (例如:我们设置缓存时采用了相同的过期时间,在同一时刻出现大面积的缓存过期),所有原本应该访问缓存的请求都去查询数据库了,而对数据库CPU和内存造成巨大压力,严重的会造成数据库宕机。从而形成一系列连锁反应,造成整个系统崩溃。 解决办法: 大多数系统设计者考虑用加锁( 最多的解决方案)或者队列的方式保证来保证不会有大量的线程对数据库一次性进行读写,从而避免失效时大量的并发请求落到底层存储系统上。还有一个简单方案就时讲缓存失效时间分散开。 缓存穿…

2020年2月26日 0条评论 13821点热度 0人点赞 阅读全文
面试

Redis面试总结——持久化、线程模型、内存淘汰机制等

Redis 持久化机制 Redis是一个支持持久化的内存数据库,通过持久化机制把内存中的数据同步到硬盘文件来保证数据持久化。当Redis重启后通过把硬盘文件重新加载到内存,就能达到恢复数据的目的。 实现:单独创建fork()一个子进程,将当前父进程的数据库数据复制到子进程的内存中,然后由子进程写入到临时文件中,持久化的过程结束了,再用这个临时文件替换上次的快照文件,然后子进程退出,内存释放。 RDB是Redis默认的持久化方式。按照一定的时间周期策略把内存的数据以快照的形式保存到硬盘的二进制文件。即Snapshot…

2020年2月25日 0条评论 13775点热度 3人点赞 阅读全文
原创

深入理解Redis

主从复制 redis主从复制特点: 一个master可以有多个slave 一个slave只能有一个master 数据流是单向的,从master到slave 配置主从 实现方式有两种: 命令方式 配置文件方式 命令方式 在从服务器上执行以下命令即可: slaveof 主服务器的IP 端口号 slaveof命令是异步的,不阻塞。 从服务器现有的数据会先被清空,然后再从主服务器同步数据 停止一台从服务器的复制操作,在此台从服务器上执行以下命令: slaveof no one 配置文件方式 只需要修改从服务器的配置 修改配…

2019年11月22日 0条评论 13412点热度 0人点赞 阅读全文
网站统计
  • 文章总数:304 篇
  • 评论总数:456 篇
  • 标签数量:226 个
  • 最后更新:2023年01月29日
  • 建站日期:2016年6月6日

佳节又重阳,玉枕纱厨,半夜凉初透。

最新 热点 随机
最新 热点 随机
开工啦~ 今晚,回家过年! 图数据库选型:Neo4j、Janus、HugeGraph Redisson分布式锁的watch dog自动续期机制 哀莫大于心死 你好,2023
居家办公了~C# 11 的这个新特性,我愿称之最强!看病难~取药难~~RocketMQ的push消费方式实现详解国庆节过的也很累~~开工啦~
docker registry私库镜像删除 SpringBoot整合GraphQL入门教程 记一次spring-cloud-netflix-core引发的内存溢出分析 JVM安全点介绍 Tomcat7.0配置CORS(跨域资源共享) Chrome等浏览器下出现net::ERR_BLOCKED_BY_CLIENT的解决办法
最近评论
dd 发布于 31 分钟前(02月06日) 请问idea2022 myBatiscodehelperpro 3.1.5激活码?
Frankie Bridge 发布于 7 小时前(02月06日) I really like your writing style..Its so easily un...
Frankie Bridge 发布于 2 天前(02月05日) Hi! Just wondering- what template did you use for ...
lyshark 发布于 3 周前(01月18日) 已添加贵站,申请交换友链:) name: LyShark - 孤风洗剑 link: https:...
poetry 发布于 1 个月前(01月05日) 感谢分享
友情链接
  • 志文工作室
  • 临窗旋墨
  • 旧时繁华
  • 城南旧事
  • 强仔博客
  • 林三随笔
  • 徐艺扬的博客
  • 云辰博客
  • 韩小韩博客
  • 知向前端
  • 阿誉的博客
  • 林羽凡
  • 情侣头像
  • 周良博客
  • 马内
  • 哥斯拉
  • LyShark - 孤风洗剑
标签云

Your browser doesn't support the HTML5 CANVAS tag.

  • Redis
  • hbase
  • 博客
  • 日常
  • SpringBoot
  • Spring
  • Eclipse
  • 领域模型
  • JAVA
  • https
  • Spring Cloud Gateway
  • 散文
  • 重构
  • JVM
  • 锁
  • 分布式锁
  • Linux
  • docker
  • 文档
  • 搜索
  • 架构
  • 程序员
  • IDEA
  • Excel
  • RocketMQ
  • ElasticSearch
  • 高并发
  • K8s
  • Xshell
  • 多线程
  • 微服务
  • MySQL
  • SQL
  • 文学
  • Spring Cloud
  • Visual Studio
  • Git
  • MQ
  • 分布式
  • 面向对象
  • Zookeeper
  • 数据库
  • 设计模式
  • Python
  • 面试
  • 程序人生
  • UML
  • SEO
  • 教程
  • 妹妹的画

COPYRIGHT © 2022 lifengdi.com. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

豫ICP备16004681号-2