自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(96)
  • 收藏
  • 关注

原创 ThreadLocal实现原理

ThreadLocal 是 Java 中实现线程封闭(Thread Confinement)的核心机制,它通过为每个线程创建变量的独立副本来解决多线程环境下的线程安全问题。

2025-06-11 16:04:06 297

原创 Spring Cloud业务相关问题

tomcat但是分布式项目中每个微服务都是一个tomcat,设置起来比较麻烦,要是是单体项目还可以采用。重点实现方式是:Nginx和网关有两种限流方式:1控制速率;2控制流量(控制并发的连接数)大量请求袭来,将这些请求存储到漏桶中,漏桶再将这些请求以固定速率发出,请求的速率就比较稳定了。其他漏桶装不下的请求就等待或抛弃id:某一服务的唯一标识url:服务名称path:路径映射name里的RequestRateLimiter就是一个局部过滤器总体算法就是使用了令牌桶算法令牌存储默认使用redis存储,需要配置

2025-06-11 13:28:59 163

原创 spring cloud

在服务的发起方添加一个配置类(全局生效)、在yml配置文件里配置(指定了哪一个服务,所以局部生效)

2025-06-10 17:55:56 223

原创 RabbitMQ 各类交换机

交换机用来路由消息。如果直发队列,这个消息就被处理消失了,那别的队列也需要这个消息怎么办?那就要用到交换机。

2025-06-08 20:57:26 463

原创 RabbitMQ work模型

当一个消息队列绑定了多个消费者,每个消息消费的个数都是平摊的,一人一个消息,不会考虑哪个消费者能力强弱。这样会造成消息堆积。如何解决:修改yml文件,修改preFetch参数,控制消费者预取的消息数量,处理完再处理下一条,能者多劳。Work 模型是 RabbitMQ 最基础的消息处理模式,核心思想是 ​。​,适用于任务分发和负载均衡场景。

2025-06-08 20:38:13 489

原创 RabbitMQ入门

RabbitMQ 是一个基于 ​​ 的开源消息队列,用于实现系统间的 ​​、​​ 和 ​​。

2025-06-08 19:47:25 420

原创 spring task定时任务快速入门

spring task它基于注解和配置,可以轻松实现任务的周期性调度、延迟执行或固定频率触发。按照我们约定的时间自动执行某段代码。例如闹钟。

2025-06-08 17:31:57 279

原创 redis分片集群架构

主从集群解决高并发,哨兵解决高可用问题。但是任然有两个问题没有解决:1海量数据存储问题;2高并发写的问题(如果服务中有大量写的请求)那就可以采用分片集群架构解决这些问题。

2025-06-07 20:42:33 361

原创 redis哨兵模式

主从模式有缺陷,保证不了redis集群的高可用。加入主节点宕机,就丧失了写数据的能力。为了保证redis集群的高可用,就提出了哨兵模式,实现主从集群的自动故障恢复。哨兵也是一个由多台redis节点(至少3台)组成的节点。

2025-06-07 20:13:49 314

原创 redis集群

单点redis并发能力是有限的,想要进一步提高并发能力,需要搭建redis集群,实现读写分离。一个主节点master,主要实现增删改操作,多个从节点实现读操作。当主节点修改了数据,必须要将数据同步给其他从节点。

2025-06-07 18:09:26 198

原创 redis分布式锁

集群情况下的定时任务、抢单、幂等性场景。

2025-06-05 21:47:33 312

原创 redis数据过期策略、淘汰策略

当redis内存不足时(全是没有过期的key),还要往reids里加数据时,Redis就会根据某一规则强制淘汰键(即使未过期)。​主动清理过期键,每隔一定时间,抽取一定量的key进行检查,后面会全部遍历一遍。不会有得不到清理的key了。redis过期策略是两种模式的结合。LRU:最近最少使用。LFU:最少频率使用。

2025-06-05 21:09:19 344

原创 Redis持久化策略

Redis提供两种核心持久化策略(​​和​​),以及混合模式,确保数据在重启或崩溃后不丢失。

2025-06-05 19:32:00 783

原创 MVCC实现原理

你可以把MVCC的可见性判断想象成一个"时间线游戏",通过比较事务ID的大小关系,决定当前事务能看到哪个版本的数据。​的机制,在保证事务隔离性的同时,最大化并发性能。它是MySQL高并发能力的基石,理解其原理对优化SQL和排查并发问题至关重要。MVCC(Multi-Version Concurrency Control,多版本并发控制)是数据库实现高并发的核心技术,​。就像考试时,你只能参考已交卷同学的答案,不能看还在答题的同学的试卷!​是通过保存数据的多个版本,让。

2025-06-05 11:41:47 1166

原创 MySQL事务及其原理

事务(Transaction)是数据库操作的最小工作单元,是作为单个逻辑工作单元执行的一系列操作。

2025-06-05 10:48:24 755

原创 Java类加载过程

文件加载到内存,并转换成。

2025-06-05 10:43:35 856

原创 MySQL索引(index)

索引是一种有序的数据结构,用来高效获取数据的假设查一张表中age为18的所有数据无索引的情况,找到了age为18后还要继续扫描全表,看是否还有age是18的,这就是全表扫描,性能极差有索引的情况,给age做一个二叉树,能快速找到优缺点每次更新表,同时也要更新索引。

2025-06-04 21:12:59 1197

原创 java类的生命周期

运行时常量池,类加载器的作用,多态的原理,类的加密和解密。

2025-06-03 20:34:26 712

原创 JVM垃圾回收

用两种算法判断:引用计数法,可达性分析算法。

2025-06-03 19:02:22 360

原创 MySQL锁机制

锁是计算机协调多个进程或线程某一资源的机制。在数据库中,除传统的计算资源(CPU、RAM、I/0)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂。MySQL中的锁,按照锁的粒度分,分为以下三类。

2025-06-02 21:15:48 350

原创 MySQL日志

MySQL中的日志有:错误日志、二进制日志、查询日志、慢查询日志。

2025-06-02 17:51:24 331

原创 java多线程与JUC

进程:进程是操作系统分配资源的基本单位。在电脑中,一个软件就是一个进程线程:线程是CPU调度的基本单位,是进程内的执行单元。相当于一个软件中的不同功能多线程程序的特点:程序可以同时去做多件事,CPU可以在多件事之间切换,把等待的空余时间充分利用起来,提高程序的运行效率多线程的应用场景?只要你想让多个事情同时运行就需要用到多线程。比如:软件中的耗时、等待操作、所有的聊天软件、所有的服务器。

2025-06-01 20:14:54 931

原创 java Map双列集合

单列集合:一次只能添加一个元素双列集合:一次添加两个元素,左边的叫键(唯一的不能重复),右边叫值(可以重复),键和值一一对应。这样一对叫:键值对/键值对对象/在Java中叫:Entry。

2025-06-01 15:50:56 458

原创 redis持久化策略

将命令转换为Redis网络协议(RESP)格式。先写入内存缓冲区,再根据策略刷盘。[命令执行] → [

2025-05-30 21:32:29 274

原创 InnoDB引擎逻辑存储结构及架构

系统表空间独占表空间通用表空间。

2025-05-30 16:34:37 437

原创 MySQL事务及其原理

事务是一组操作的集合,这组集合要么同时成功,要么同时失败MySQL事务默认是自动提交的,也就是说每一条sql语句就是一条事务。

2025-05-30 15:19:56 414

原创 Bean对象循环依赖

Spring 循环依赖是指。

2025-05-30 11:38:41 271

原创 java类与类之间的关系

成员变量。

2025-05-30 08:50:52 203

原创 SpringIOC中Bean生命周期

Bean的生命周期就像一个人的一生:出生 → 成长 → 死亡,Spring 全程监护管理Spring读取@Component、XML配置等,生成(相当于宝宝的DNA蓝图)

2025-05-29 21:19:04 633

原创 spring IOC控制反转

好的!我用一个通俗易懂的比喻来解释 ​​,并结合里面的专业名词,让你轻松理解。

2025-05-29 20:03:21 1034

原创 springboot面试题

想象 Spring Boot 自动配置就像一个智能家电安装师傅,它会根据你家里的电器(项目中的依赖)自动帮你接线(配置),你只需要按下开关(主类上的。启用 Spring Boot 的自动配置机制。根据项目依赖(如 JPA、Redis 等)自动配置 Spring 应用的上下文,减少手动配置。下次看到自动配置,就想象是这个师傅在问:"你要用数据库吗?用于定义 Bean 的配置方法,替代传统 XML 配置方式。表明当前类是一个 Spring Boot 的配置类,继承自。自动扫描指定包及其子包下的组件(如。

2025-05-29 17:43:12 468

原创 java面向对象

面向对象就是一个写程序的套路,面向:拿,找。对象:能干活的东西面向对象:拿东西来做对应的事情。

2025-05-28 10:44:24 366

原创 java异常

必须要手动抛出,否则代码报错。

2025-05-27 19:13:48 467 1

原创 spring AOP面向切面编程快速入门

类上要加@Component(交给spring容器管理)、@Aspect类里面定义切点和通知切点表达式放在两种位置:​​切点注解(@Pointcut)​​或​​通知注解(@Before/@After等)​​中。execution([修饰符] 返回类型 [类名].方法名(参数) [异常])

2025-05-26 16:59:17 185

原创 公共字段自动填充功能实现【springboot】

指定添加注解的地方定义切入点,确定切入点位置定义通知,确定通知类型,通知要执行的操作。

2025-05-26 16:10:29 406

原创 jwt令牌使用及实现登录认证

用户访问登录接口,接口返回JWT令牌,以后每次访问别的接口都要携带JWT令牌,其他接口响应时都要校验JWT令牌。但是如果修改密码后旧令牌没有实现作废,借助redis实现令牌主动失效。有一个加密密钥,解密jwt令牌,能成功解析就是对的。JWT是一个令牌规范。

2025-05-26 12:18:08 219

原创 java集合体系结构

Vector已被淘汰List系列集合:添加的元素是有序(存储顺序一致)、可重复、有索引set系列集合:添加的元素是无序(存储顺序不一致)、不重复(可用于数据去重)、无索引。

2025-05-26 11:12:13 580

原创 java三种常见设计模式,工厂、策略、责任链

责任链模式是一种行为型设计模式,将请求的发送者和接收者解耦,使多个对象都有机会处理请求。这些对象形成一条链,请求沿链传递直至被处理或结束。工厂方法模式是一种创建型设计模式,定义一个用于创建对象的接口,但让子类决定实例化哪个类。工厂方法使类的实例化延迟到子类。策略模式是一种行为型设计模式,定义一系列算法,封装每个算法,并使它们可以互换。策略模式让算法独立于使用它的客户端变化。

2025-05-25 16:15:58 476

原创 JVM虚拟机

jvm是java的运行环境(java二进制字节码运行环境)

2025-05-25 10:23:08 732

原创 MySQL分库分表

将同一张表的数据按行拆分到多个结构相同的表中,通常依据某个字段(如用户ID、时间)的哈希或范围规则分配。将同一个表的数据分散到不同的数据库实例中,通常结合水平分表使用。将一张表的字段按业务属性拆分到不同的表中,减少单表的宽度。比如:一些很长的数据,比如商品描述。

2025-05-24 17:12:08 448

手机屏幕控制按键控制自动脚本

手机屏幕控制按键控制自动脚本

2024-11-19

软考软件设计师考试笔记改进版

软考软件设计师考试笔记改进版

2024-11-07

计算机技术职业资格考试,软件设计师考试笔记

计算机技术职业资格考试,软件设计师考试笔记

2024-11-06

STM32单片机引脚定义图

STM32单片机引脚定义图

2024-08-04

IDM.v6.38.2.zip

IDM.v6.38.2.zip

2024-07-26

实验,基于java语言写的2048游戏的实验及其代码

实验,基于java语言写的2048游戏的实验及其代码

2024-06-16

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除