- 博客(33)
- 收藏
- 关注
原创 浅析Redis分布式锁的实现方法
本文解析Redis分布式锁的实现方法,涵盖SETNX+EXPIRE原子性问题、Lua脚本保障原子操作、可重入锁设计、自动续约机制及RedLock集群算法,并介绍Redisson框架的高效集成方案,确保分布式系统的并发安全与高可用性。
2025-03-15 18:43:46
501
原创 MySQL与Redis的缓存一致性问题
本文探讨了MySQL与Redis缓存一致性问题,分析了先操作MySQL或Redis时的时序问题及潜在风险,提出了Cache-Aside模式作为解决方案,并介绍了直读、直写等缓存操作模式。此外,还提到通过Canal和消息队列提升系统一致性的方法,为高并发场景下的数据一致性提供了实践指导。
2025-03-13 18:52:50
932
原创 MySQL索引的最左前缀原则
由于联合索引的B+树是根据列顺序来先后在原基础上构建的,只有前列相等时后列才有序,所以在使用时,也必须要保证前列所查出的结果为单一值,后列才能使用索引。
2024-12-22 15:21:12
315
原创 Spring IOC如何解决循环依赖的问题?
Spring根据IOC控制反转的思想,将Bean(对象)的生命周期交由Spring IOC容器来管理,当你需要使用一个对象的时候,Spring IOC容器会自动帮你创建该对象的实例并初始化,大大降低的代码的耦合性。我们知道,如果对象A引用了对象B,对象B又引用了对象A,那么在创建对象A的时候,就会去创建对象B,创建对象B的时候又会去创建对象A,…如此便产生了对象的循环依赖的问题。
2024-12-15 19:00:34
627
1
原创 Java之ConcurrentHashMap线程安全原理
对于Java程序员来说,HashMap是他们用到最多的映射(键值对)数据结构,但是HashMap是线程不安全的,在多线程的环境下,建议使用线程安全的ConcurrentHashMap。本文将深入源码介绍一下ConcurrentHashMap如何确保线程安全。
2024-12-01 20:15:37
783
原创 Java之深入理解HashMap
HashMap是Java程序员使用频率最高的一种映射(键值对)数据结构,它继承自AbstractMap,又实现了Map类。本文将深入源码解析一下HashMap的底层原理。
2024-12-01 13:41:52
1258
2
原创 为什么要用Maven?
在写Java项目的过程中,我时常会想:为什么我要用Maven?这里让我选择构建一个Maven项目是为什么?如果没有Maven会怎样?在学习的过程中,我们不能为了学而学,如果能知道为什么要学一个技术,这个技术的产生背景是什么的话,往往更能激发我们的学习兴趣,提高学习效率。
2024-11-19 16:08:23
1095
1
原创 PicGo+Gitee搭建Typora图床
当我们使用Typora写文档时,如果包含了本地图片,那么分享给其他人后,就无法看到图片。此时我们可以配置图床来解决。
2024-10-09 14:15:10
707
4
原创 CORS-跨域资源共享
在前后端分离的项目中,我们往往会遇到跨域问题。跨域问题只会出现在浏览器发起AJAX(XMLHttpRequest、Fetch)请求的时候,因为浏览器限制了AJAX只能从同一个源请求资源,除非配置了正确的CORS。CORS是一种基于HTTP头的机制,该机制允许服务器标识除自己以外的源,使得浏览器允许这些源访问自己的资源。
2024-07-25 15:47:06
719
原创 Spring、SpringMVC、SpringBoot之间有什么关系?
SpringFramework是一个Java开发框架,SpringMVC是Spring的一个模块,SpringBoot是简化SpringFramework开发的一个框架。
2024-07-24 16:12:51
523
原创 SpringBoot整合MinIO实现文件的上传下载以及获取预览URL
SpringBoot整合MinIO实现文件的上传,下载,获取文件预览地址
2024-04-05 16:06:42
6282
8
原创 Java并发——ThreadLocal
ThreadLocal用于解决多线程访问共享资源的安全性问题,常用于将状态信息(SessionId,用户ID)与当前线程关联
2024-02-18 17:24:45
1523
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人