- 博客(51)
- 资源 (69)
- 收藏
- 关注
原创 Redis7_16 高阶篇 第七章 Redis中的缓存预热/缓存雪崩/缓存击穿/缓存穿透问题详解
文章详细介绍了缓存预热、缓存雪崩、缓存击穿和缓存穿透的概念、引起原因及其规避和解决方案。缓存预热是指系统启动前提前将热点数据加载到缓存中,以避免初期缓存未命中导致的数据库压力。缓存雪崩是由于大量缓存数据同时失效,导致数据库访问压力骤增,解决方案包括设置永不过期或错开过期时间、使用Redis集群、结合本地缓存和分布式缓存等。缓存击穿是热点数据失效后大量请求直接访问数据库,解决方案包括设置热点数据永不过期、使用互斥锁和提前预热缓存。
2024-06-27 13:59:17 1005 6
原创 Redis7_15 高阶篇 第六章 使用Redis的Bitmap实现布隆过滤器
布隆过滤器是一种高效的数据结构,用于快速判断元素是否存在于一个集合中。它通过使用多个哈希函数将元素映射到一个位数组上,以此实现高速查询和空间效率。虽然布隆过滤器可能会误判,将不存在的元素判断为存在,但它绝不会错过真正存在的元素。这种特性使得布隆过滤器特别适合于需要快速判断元素是否存在于集合中的场景,如网络爬虫的URL去重、数据库查询缓存等。通过调整过滤器的大小和哈希函数的数量,可以在误判率和空间效率之间找到平衡。此外,布隆过滤器的实现可以结合Redis等技术,进一步提高应用的性能和效率。
2024-06-24 11:30:11 875 3
原创 Redis7_14 高阶篇 第五章 Redis的Bitmap/Hyperloglog/Geo案例实战
本文深入探讨了Redis的高级数据类型和应用场景,包括HyperLogLog、Geo、Bitmap等,通过具体的面试题和实战案例,展示了如何利用Redis解决实际问题。HyperLogLog用于估算集合中的基数,适合统计独立访客数;Geo用于存储和查询地理位置信息,实现“附近的人”等功能;Bitmap适用于统计用户登录状态、日活等。文章通过具体代码示例,展示了如何使用这些数据类型进行数据添加、查询和统计,有效地解决了抖音电商直播中的商品评论排序、App用户签到统计、网站UV统计等问题。
2024-06-24 02:18:02 422 3
原创 Redis7_13 高阶篇 第四章 Canal实现Redis与Mysql双写一致性
本文提供了一个实用的方案来解决在使用缓存时常见的数据一致性问题,通过结合Canal和Redis,可以有效地同步MySQL数据库的变更到缓存系统,提高应用的数据准确性和响应速度。
2024-06-24 00:28:15 992
原创 Redis7_12 高阶篇 第三章 Redis作为缓存如何实现双写一致性?如何选择更新策略?
提供了一系列解决方案和最佳实践,以确保在使用缓存时维护数据的一致性和准确性。缓存双写一致性问题是关注在使用Redis和数据库更新操作时如何保持数据一致性。解决方案包括双检锁策略,确保查询时Redis缓存的准确性,以及延时双删或直接更新MySQL策略,处理MySQL变动时的一致性。文章通过代码示例说明实现这些策略,确保数据准确性和一致性。文章提供了维护使用缓存时数据一致性的方法和最佳实践。
2024-06-23 17:18:56 749 1
原创 安装GitHub Desktop报错Installation has failed There was an error while installing theapplication.解决办法
安装GitHub Desktop报错Installation has failed There was an error while installing theapplication.解决办法
2024-06-06 01:23:12 789
原创 Redis7_10 高阶篇 第二章 Redis的BigKey
阿里广告平台,海量数据里查询某一固定前缀的key?小红书,你如何生产上限制keys */flushdb/flushall等危险命令以防止误删误用?美团,MEMORY USAGE 命令你用过吗?BigKey问题,多大算big? 你如何发现? 如何删除? 如何处理?BigKey你做过调优吗? 惰性释放lazyfree了解过吗?Morekey问题,生产上redis数据库有1000W记录,你如何遍历? key *可以吗?
2024-04-15 21:44:44 1330
原创 Redis7_10 高阶篇 第一章 Redis是单线程还是多线程?
直接回答redis是单线程或是多线程,都是不严谨的。这就好比直接回答java中有泛型(jdk5才有),和Java中有lambda表达式(jdk8才有)一样不严谨。Redis4之前,redis是单线程的。Redis4开始逐渐的引入部分多线程。(比如异步删除)Redis6/7全面支持了多线程,主线程中也有了多路的io复用。
2024-04-15 20:35:19 1163
原创 Redis7_09 基础篇 第九章 SpringBoot集成Redis
SpringBoot集成redis的三种方式。Spring Framework 提供的 RedisTemplate 是对 Redis 客户端库的封装,它提供了一种更高级别的抽象,使得与 Redis 进行交互更加方便,并且可以与 Spring 框架更好地集成。适用场景:如果你的应用程序已经在使用 Spring 框架,并且希望通过统一的接口来与 Redis 进行交互,那么 RedisTemplate 是一个很好的选择。
2024-04-14 02:09:16 1026
原创 Redis7_08 基础篇 第八章 Redis集群(cluster)
数据量过大时单个Master复制集难以承担,因此需要对多个复制集进行集群,形成水平扩展,每个复制集只负责存储整个数据集的一部分,这就是Redis的集群,其作用是提供在多个Redis节点间共享数据的程序集。通俗的解释就是多个redis主从复制服务的组合(集合),每个服务都只负责整个数据集的一部分,并且互相都能共享数据。
2024-04-12 10:30:00 964
原创 Redis7_07 基础篇 第七章 Redis哨兵(sentinel)
Redis的哨兵机制(Sentinel)是Redis提供的一种高可用性解决方案,用于监控和管理Redis实例。哨兵是一个独立运行的进程,负责监控主从Redis实例的运行状况,并在主节点下线时自动将从节点切换为新的主节点,以保证系统的可用性。哨兵就是来监控主节点的,一旦发现主节点宕机,会选出一从节点来接替主节点的位置!俗称 无人值守运维哨兵不存放数据,它只是吹哨人1.2 Redis 哨兵的功能监控主从Redis库的运行状态,确保正常运行。实时消息通知,将故障转移的结果发送给客户端。
2024-04-11 23:58:01 885
原创 Redis7_06 基础篇 第六章 Redis复制(replica)
就是主从复制,master只关心写操作,Slave只关心读操作,当master的数据库变化的时候,自动将新的数据异步同步到其它slave数据库.
2024-04-10 18:49:16 1324
原创 Redis7_05 基础篇 第五章 Redis的发布与订阅
Redis可以通过发布订阅实现消息中间件MQ的功能但不建议在生产环境中使用Redis的发布/订阅。Redis的发布订阅功能在消息发送方面即发即失没有ACK机制,无法保证消息的消费成功。消息在Redis中不持久化,必须先执行订阅,再发布消息。如果消息发布时没有订阅者,消息将被直接丢弃。Redis5.0引入了Stream数据结构,支持多播和数据持久化,比发布订阅更强大.
2024-04-10 17:31:19 539
原创 Redis7_04 基础篇 第四章 Redis的管道
Pipeline是为了解决RTT往返回时,仅仅是将命令打包一次性发送对整个Redis的执行不造成其它任何影响批处理命令变种优化措施,类似Redis的原生批命令(mget和mset)
2024-04-10 16:59:47 390
原创 Redis7_03 基础篇 第三章 Redis的事务
开启:以MULTI开始一个事务入队:将多个命令入队到事务中,接到这些命令并不会立即执行而是放到等待执行的事务队列里面执行:由EXEC命令触发事务。
2024-04-10 16:08:37 804
原创 尚硅谷 Redis7 学习笔记 序言
汇总为一个专栏完全免费公开 无痛订阅 欢迎访问可以自行在哔哩哔哩搜索 尚硅谷 Redis7课程 对照学习本笔记包含 尚硅谷官方给出的脑图中的 大部分内容, 但绝对不是完全照搬,实战演练部分都有 手打的文字解释,包括总结 等等 用了引用块 加粗加红等方式标记重点。
2024-04-10 14:28:52 394
原创 Redis7_02 基础篇 第二章 Redis的持久化 (下)
在 Redis 中,RDB(快照)和 AOF(追加文件)是两种主要的数据持久化方式。RDB+AOF 混合持久化是指同时使用这两种方式来保证数据的持久性和安全性。持久化是指将数据存储在磁盘上,以确保在Redis服务器重启后数据不会丢失。Redis 7引入了几种持久化方式。
2024-04-09 22:43:32 851
原创 Redis7_02 基础篇 第二章 Redis的持久化 (中)
Redis AOF(Append-Only File)是一种持久化方式,通过将写命令追加到文件中来记录每个写操作,以便在Redis重启时重新执行这些命令,从而实现数据持久化。 可以通过配置来选择AOF的同步策略: (也就是,redis从内存写数据到文件的策略是怎么样的) Redis持久化保存的文件是 appendonly.aof aof持久化保存的文件就叫做 appendonly.aof 这一个单文件 保存路径将和rdb持久化的保存路径一致
2024-04-09 21:59:25 1099
原创 Redis7_02 基础篇 第二章 Redis的持久化 (上)
主要讲解Redis的持久化方式之一 RDB方式 也就是 snapshot方式 讲解包括 实战演示 配置修改 优劣势 触发条件的讲解
2024-04-09 00:49:35 872
原创 Redis7_01 基础篇 第一章 Redis的十大数据类型(下)
Redis7十大数据类型下篇 bitmap geo Hyperloglog stream bitfield
2024-04-08 03:38:58 841 1
原创 Redis7_00 基础篇 第零章 Redis的介绍、下载与安装
Redis的详细介绍 下载地址。虚拟机,Linux镜像系统下载地址。Redis安装到虚拟机的详细教程。
2024-04-07 11:03:56 1207
原创 尚硅谷JavaWeb项目:微头条 略改进版本
由于该项目是教学项目,其中的内容自行查看尚硅谷bilibili账号学习即可此文章只讲解两处bug的改进针对第一个问题,即页面大小修改时出现多次请求的 bug,解决方案是优化页面大小修改的事件处理,确保在页面大小变化后将当前页面置为第一页再向后端发起读取新闻的请求,从而避免出现页面数不匹配的情况。针对第二个问题,即用户可任意修改他人新闻的 bug,解决方案是在控制层对修改新闻的请求进行验证,通过比较请求中的 token 对应的用户和新闻的发布者是否一致来判断是否允许修改,若不一致则直接响应未登录状态。
2024-03-09 20:04:59 1283
原创 JAVA程序设计:一篇文章教你完整写出贪吃蛇小游戏
设计思路:游戏设计遵循初始化游戏界面、实现游戏逻辑、绘制游戏界面、控制游戏流程、以及实现游戏重新开始的步骤。核心功能:蛇的移动:通过更新数组中蛇身体各部分的坐标来实现。游戏状态管理:包括吃苹果的检测、碰撞检测(蛇头与边界或自身的碰撞),以及游戏结束时的处理。技术实现:使用Java Swing进行GUI设计,KeyListener接口监听键盘事件控制蛇的移动,Timer类控制游戏逻辑的周期性执行。代码实现:提供了SnakeGame类的完整代码
2024-03-04 14:00:41 2675
原创 最新版IDEA:Add web Framework Support步骤/构建JavaWeb项目步骤
最新版IDEA:Add web Framework Support步骤/构建JavaWeb项目步骤 由于最新版IDEA修改了设置添加框架支持仍然无法显示,给创建javaweb项目造成困扰,现给出构建javaweb的步骤(包含add framework web support的方式)
2024-03-03 20:59:34 7592 4
原创 尚硅谷课程:数据结构与算法中弗洛伊德算法的最短路径求法
总体而言,代码实现了弗洛伊德算法中创建最短路径数组的逻辑。它正确地根据dis数组和pre数组构建了最短路径,并将结果存储在result数组中。然而,为了确保代码的正确性,建议在实际使用前进行测试和验证,尤其是对于pre数组的更新和路径的起点和终点的顺序进行仔细检查。
2024-02-11 21:28:09 949 1
原创 尚硅谷课程:数据结构与算法中迪杰斯特拉求最短路径问题
尚硅谷课程:数据结构与算法中迪杰斯特拉求最短路径问题.由于该课程只给出了最短距离的数组,并未给出求最短路径的数组,故编写此文章免费为大家提供一种思路,有误之处欢迎大家在评论区指出
2024-02-10 21:31:44 820
原创 尚硅谷课程:数据结构与算法中哈夫曼编码的解码问题
旨在解决尚硅谷课程:数据结构与算法中哈夫曼编码的解码问题.具体就是byte[]的最后一个元素的解码问题
2024-01-17 00:57:09 436 1
原创 毕业设计\毕业论文论文下载查询\查重降重\PPT工具合集
马上迎来毕业季,许多同学需要撰写论文和毕业设计,该文章旨在为大家节省时间,提高效率,提供了有关毕业论文的各类工具,赶紧收藏起来吧!
2023-01-09 15:48:29 826 1
原创 day12Java学习笔记 Scanner、String详解
1.Scanner的概述和构造方法原理:这里sc对象使用的构造方法是Scanner(InputStream source)而system类中的静态成员变量就是inputStream类型的。所以构造方法使用是 Scanner sc = new Scanner(System.in);2.Scanner的hasNextXXX()方法和nextInt()方法3.获取数据出现的小问题4.String类的概述5.String类的构造方法 6.String的特点一旦被赋值就不再改变 字符串的值意思是,字符串被创建后,
2022-05-28 23:20:51 1518
原创 Java课程设计报告—音乐播放器
目录Java课程设计报告1.设计内容及要求2.需求分析3.总体设计4.主要功能设计流程5.系统实现及测试6.总结与说明Java课程设计报告题目:java音乐播放器 姓名学号院 系 班 级 专 业 任课教师 1.设计内容及要求 能够实现简单的音乐播放器功能,如:打开本地文件,播放,暂停,停止,背景播放,单曲循环等等,界面充实,交互友好,可以添...
2022-05-28 10:32:29 5602 1
原创 Java游戏合集
具体实现:import java.util.Scanner;class GuessNumber{ public static void main(String args[]){ int number = (int)(Math.random()*100)+1; while(true){ Scanner sc = new Scanner(System.in); System.out.println("请输入一个数据(1-100)用于猜数字。"); int
2022-05-14 21:35:37 1089
原创 Android Studio ListView数据适配器实现通讯录设计(头像加名称)
Android StudioAndroid Studio ListView数据适配器实现通讯录设计(头像加名称)一、ui设计二、自定义适配器BaseAdapter三、绑定绑定数据适配器
2022-02-12 08:10:16 2486 3
原创 Android Studio 列表Listview的简单用法
⭐⭐⭐⭐⭐⭐适配器设置方法⭐⭐⭐⭐⭐⭐⭐ArrayAdapter设置参数依次为 上下文,布局,数据源myAdapter = new ArrayAdapter(xxxActivity.this,android.R.layout.simple_expandable_list_item_1,xxx);制作一个列表以逐行显示文本:一、布局:二、Java代码:package com.example.unit6_1listview;import androidx.appcompat.app.App
2022-01-10 20:46:44 4025
原创 Android Studio 赛博朋克风注册登录app
结果展示:主界面:登录界面:注册界面:一、设计要求:①主界面供用户选择登录/注册 并展示用户昵称、用户ID②登陆界面,点击登录后查询用户输入用户名与密码是否与内设用户名密码一致。一致消息提示登陆成功不一致消息提示登陆失败未填写时以消息提示/对话框方式提醒用户③注册界面,点击注册后跳转至主界面显示用户信息未填写时消息提示二、设计框架:主界面:设置请求码 private static final int REQUEST_REGISTER_CODE = 1; privat
2022-01-09 01:33:37 1012 2
Java/Python实现的爱心代码
2024-02-04
基于java的ssm或spring boot框架的22套毕业设计
2022-06-08
基于stm32的课程设计——USB读卡器实验.rar
2022-06-08
基于stm32的课程设计——UCOSII实验2-信号量和邮箱.rar
2022-06-08
基于STM32f103的嵌入式课程设计—UCOSII实验1-2-任务创建删除挂起恢复.rar
2022-06-08
基于stm32的课程设计———UCOSII实验1-1-任务调度
2022-06-08
基于STM32f103的嵌入式课程设计——网络通信实验
2022-06-08
基于MSP430的自动控制通风系统
2022-05-17
基于MSP430的新型故障指示器
2022-05-17
具有定时功能的八路数显抢答器的设计.rar
2022-05-17
基于单片机的抢答器设计
2022-05-17
基于LM3S615+MSP430的远距离遥控自动避障小车设计
2022-05-17
基于MSP430的智能家居管理系统
2022-05-17
基于MSP430的智能声音跟随小车设计
2022-05-17
基于DSP的智能物联网家用机器人
2022-05-17
模拟舞台灯光控制系统设计
2022-05-17
基于MSP430的无线多功能座位指示牌设计
2022-05-17
智能井下预警及求救系统
2022-05-17
自学习式走迷宫智能小车设计
2022-05-17
基于MSP430的心电监控系统
2022-05-17
基于AM3715CUS和TMS320F28027的无线门禁系统设计
2022-05-17
430低功耗应用_智能护眼台灯.rar
2022-05-17
基于TMS32的智能垃圾桶设计
2022-05-17
5V输出电源,同步降压型DC-DC转换器工程文件(原理图、PCB源文件、gerber、BOM).rar
2022-05-16
基于瑞萨100LGA单片机的直流风机风力摆控制系统
2022-05-16
基于stm32的风力控制系统设计(原理图+源码+报告/论文)
2022-05-16
基于STM32的数据采集+心率检测仪(原理图、PCB、程序源码、论文)/具波形显示功能的数据采集系统
2022-05-15
基于STM32的多功能数控电源设计(原理图、PCB、程序源码等).rar
2022-05-15
基于STM32 的联合调试侦听设备解决方案(原理图、PCB源文件、调试工具、视频)
2022-05-15
基于STM32F103RC的电子相册设计(原理图、PCB源文件、程序源码及制作).rar
2022-05-15
基于STM32的数字示波器设计
2022-05-12
基于stm32的智能运动监测臂包设计
2022-05-12
基于STM32F103的卫星GPS路径记录仪
2022-05-12
基于stm32和mpu9250的usb hid键盘、鼠标、游戏控制器
2022-05-12
基于STM32+物联网的户外环境检测装置(STM32、APP、WIFI)
2022-05-12
基于STM32+OV7670的照相机设计.rar
2022-05-10
基于STM32F103+Android实现的智能家政机器人
2022-05-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人