摘要: 缓存击穿 问题描述:客户端在服务端访问热点数据,服务端访问缓存数据,而缓存数据并不存在,或者已经过期。导致大量的客户端去访问了MySQL数据库。 图1【缓存击穿】 解决方案: 互斥锁:使用了redis中的setnx方法实现了互斥锁,只允许一条线程去访问数据库,并把数据带出,再次刷新redis中的数据 阅读全文
posted @ 2024-06-28 17:21 DAawson 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 第一步,新建项目打开settings 第二步,设置Java Compiler 第三步,设置项目文件和编码 第四步,设置Maven仓库位置 阅读全文
posted @ 2024-06-26 17:20 DAawson 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 线程的定义 Java线程是Java编程语言中的执行单元。在Java中,线程可以看作是轻量级的进程,它独立运行,具有自己的执行路径。 线程的原理 Java线程的实现基于操作系统的线程模型,但Java虚拟机(JVM)对线程的管理和调度做了封装和优化,使得Java线程更加可控和可靠。下面是Java线程的一 阅读全文
posted @ 2024-06-03 15:31 DAawson 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 简单示意图 详细示意图 ArrayList 和 LinkedList 区别 ArrayList(默认size为10) 是实现了基于动态数组的数据结构,LinkedList 基于双向链表的数据结构。 对于随机访问 get 和 set,ArrayList 效率优于 LinkedList,因为 Linke 阅读全文
posted @ 2024-05-30 21:07 DAawson 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 《Lambda表达式》 一、为什么要使用Lambda表达式 避免匿名内部类定义过多 让代码看起来简洁 去掉多余没有意义的代码 留下核心逻辑 Lambda是在JDK1.8中产生的 二、理解Functional Interface(函数式接口) 函数式接口是学习Java8 lambda表达式的关键所在 阅读全文
posted @ 2024-05-30 16:11 DAawson 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 在线练习操作GIT地址 https://learngitbranching.js.org/?locale=zh_CN 基本操作流程 克隆项目 git clone <项目地址> 如果是其他分支的项目,可以换成 git clone <项目地址> -b <分支名称> 更改提交 git add . git 阅读全文
posted @ 2024-05-30 15:05 DAawson 阅读(4) 评论(0) 推荐(0) 编辑