java开发中间件学习记录(持续更新中~)
1 Redis
2JVM
3 java基础底层
4Mysql
5 spring
6 微服务
7.......(持续更新)
One:Redis篇
1:Redis
1.穿透


1.1缓存穿透


1.1.1布隆过滤器

1.2缓存击穿
2:击穿



1.3:缓存雪崩



1.4:双写一致







1.5.持久化(RDB,AOF)






1.6删除策略
1.7淘汰策略
1.8分布式锁 (setnx,redisson)




1.9Redis集群

1.9.1主从复制





1.9.2哨兵(Sentinel )


1.9.2.1脑裂



1.9.3分片集群




1.10 (为什么Redis这么快)I/O多路复用模型









2:MYSQL


2.1如何定位慢查询










2.2什么是索引 (了解索引吗)







2.3什么是聚集索引(聚簇索引)二级索引(非聚簇索引)


2.3.1回表查询



2.4覆盖索引


2.5MYSQL超大分页处理




2.6索引创建的原则




2.7索引失效

2.7.1最左前缀法则


2.7.2范围查询右边列失效

2.7.3在索引列上进行运输操作


2.7.4以%开头的模糊匹配



2.8sql优化





2.9事务的特性 (ACID)



2.10并发事物带来的问题(脏读,不可重复读,幻读)








2.11undo log,redo log 区别





2.12MVCC(多版本并发控制)







![]()




2.13MYSQL主从同步原理



2.14分库分表








3: JVM:



3.1JVM组成部分 ,运行流程


3.2程序计数器



3.3介绍一下Java堆



3.4虚拟机栈




3.4.1栈溢出



3.5解释一下方法区


3.5.1常量池

3.5.2运行时常量池

3.6听说过直接内存吗:




3.7什么是类加载器,类加载器有哪些



3.8什么是双亲委派模型




3.9类加载的执行过程








3.10对象什么时候被垃圾器回收




3.10.1可达性分析算法


3.11垃圾回收算法有哪些





3.12JVM的分代回收:




3.13有哪些垃圾回收器:





3.14 G1垃圾回收器










3.15强引用,软引用,弱引用,虚引用区别




3.16JVM调优的参数在哪里设置参数值




3.17JVM调优参数有哪些






3.18JVM调优工具












3.19java内存泄漏排查思路





3.20CPU飙高排查




4:常见集合篇:


4.1List



4.1.1数字索引从0开始为什么

4.2ArrayList底层实现原理






4.3Arraylist扩容

4.4数字和list转换







4.5ArrayList和LinkedList的区别




4.6HashMap





4.6.1红黑树



4.6.2散列表



4.7哈希冲突






4.8HashMap的实现原理



4.9HashMap的put方法具体流程




4.10HashMap的扩容机制


4.11hashMap的寻址公式



4.12hashmap多线程死循环




5:多线程:

5.1线程和进程的区别




5.2并行和并发的区别




5.3创建线程的方式






5.4runnable和callable(创建线程时) 的区别


5.5线程 run()和start()的区别


5.6线程包括那些状态(之间是如何转换的)



5.7多个线程之间的执行顺序

5.8 notify()和notifyAll()的区别

9:wait()和sleep()的区别


5.10如何停止一个运行的线程




2:
3:


5.11synchronized关键字的底层原理





5.12 锁升级









2:
5.13java内存模型


5.14CAS你知道吗






5.15volatile的理解








简单说就是JVM为了对代码进行优化提高性能会在不影响结果的情况下把代码执行顺序改变,但多线程就可能会出现结果不对的问题
然后volatile原理就是加了一些屏障,使屏障后的代码一定不会比屏障前的代码先执行,从而实现有序性

5.16什么是AQS






5.17ReentrantLock的实现原理







5.18死锁产生的条件




























































6:框架篇(spring( boot,mvc),mybatis)



















































7微服务:

























































8:消息中间件(MQ,Kafka)
























































9 设计模式





相关文章:
java开发中间件学习记录(持续更新中~)
1 Redis 2JVM 3 java基础底层 4Mysql 5 spring 6 微服务 7.......(持续更新) One:Redis篇 1:Redis 1.穿透 1.1缓存穿透 1.1.1布隆过滤器 1.2缓存击穿 2:击穿 1.3:缓存雪崩 1.4:双写一致 1.5.持久化(RDB,AOF) 1.6…...
(批处理)无限弹窗cmd
代码部分 echo off echo 好了,可以退出了 pause>nul echo 再点就要无限弹窗了! pause >nul echo 你还点? pause >nul echo 再给你最后一次机会,别点了,再点准备重启 pause >nul echo 点击任意键变身奥特曼…...
解决ubuntu 24.04 ibus出现卡死、高延迟问题
问题描述 ubuntu中使用ibus经常会出现卡死、高延迟的问题,网上找了一些解决方法就手动输入命令是重启。但是键盘卡死了没法输入,不能很有效的解决问题。 解决思路 通过一个bash脚本监测ibus进程,当出现进程卡死的时候自动重启。 bash代码…...
减少脏页标记技术中处理时间的方法
减少脏页标记技术中处理时间的方法 一、引言 在数据库系统中,脏页标记技术对于确保数据的一致性和持久性至关重要。然而,脏页标记过程可能会消耗一定的处理时间,影响数据库的性能。因此,寻找有效的方法来减少脏页标记技术中的处理时间具有重要意义。 二、优化数据结构 …...
828华为云征文 | 华为云Flexusx与Docker技术融合,打造个性化WizNote服务
前言 华为云Flexus X实例携手Docker技术,创新融合打造高效个性化WizNote服务。华为云Flexus X实例的柔性算力与Docker的容器化优势相结合,实现资源灵活配置与性能优化,助力企业轻松构建稳定、高效的云端笔记平台。828华为云企业上云节特惠来袭…...
JavaScript事件处理和常用对象
文章目录 前言一、事件处理程序 1.JavaScript 常用事件2.事件处理程序的调用二、常用对象 1.Window 对象2.String 对象3.Date 对象总结 前言 JavaScript 语言是事件驱动型的。这意味着,该门语言可以通过事件触发来调用某一函数或者一段代码。该文还简单介绍了Window…...
Qt基础类05-尺寸类QSize
Qt基础类05-尺寸类QSize 摘要基本信息写在前面重要成员函数举例7个QSize QSize::boundedTo(const QSize &otherSize) constQSize QSize::expandedTo(const QSize &otherSize) constbool QSize::isEmpty() constbool QSize::isNull() constbool QSize::isValid() constQ…...
Vue 2中的this指向详解
在JavaScript中,this的指向是许多开发者经常遇到的问题,尤其是在使用Vue这样的框架时。在Vue 2中,理解this的指向对于正确地访问组件的数据和方法至关重要。 1. this在Vue组件中的指向 在Vue组件的选项中,this通常指向当前组件实…...
长业务事务的离线并发问题
事务指代一组操作同时成功或同时失败,事务可分为两类: 系统事务:即关系数据库事务,一次数据库连接中由start transaction或begin开启,commit表示提交,rollback表示回滚;业务事务:完…...
黑马程序员Java笔记整理(day01)
1.windowsR进入运行,输入cmd 2.环境变量 3.编写java第一步 4.使用idea 5.注释 6.字面量 7.变量 8.二进制 9.数据类型 10.关键词与标识符...
VMware Tools系列一:安装VMware Tools的作用
最近笔者安装了VMware Workstation pro 17,同时在VMware中安装了华为的Open Euler服务器,由于虚拟机Open Euler经常需要与宿主机win10交换数据,很不方便,而安装VMware Workstation pro 17并没有自动安装了VMware Tools ࿰…...
使用大语言模型(LLM)修正小段乱码(Mojibake)为正常文本
Python方案 在上一篇文章ftfy:修正小段乱码(Mojibake)为正常文本的Python库中,我介绍了ftfy这个库。但随着持续的开发,我发现它仍然有一些解决不了的转换。如下: >>> ftfy.fix_text(‡›‘…...
C++ 访问限定符
个人主页:Jason_from_China-CSDN博客 所属栏目:C系统性学习_Jason_from_China的博客-CSDN博客 所属栏目:C知识点的补充_Jason_from_China的博客-CSDN博客 概念概述 C一种实现封装的方式,用类将对象的属性与方法结合在一块…...
几种mfc140u.dll常见错误情况,以及mfc140u.dll文件修复的方法
如果你遇到与mfc140u.dll 文件相关的错误,这通常指的是该mfc140u.dll文件可能丢失、损坏或与您的应用程序不兼容。详细分析关于mfc140u.dll文件错误会对系统有什么影响,mfc140u.dll文件处于什么样的位置?以下是几种常见的错误情况及其修复方法…...
[产品管理-21]:NPDP新产品开发 - 19 - 产品设计与开发工具 - 详细设计与规格定义
目录 前言: 一、详细设计与规格定义概述 1、产品详细设计 2、规格定义 3、详细设计与规格定义的关系 4、实际应用中的注意事项 二、详细设计与规格定义主要工具 2.1 质量功能展开QFD - 需求跟踪矩阵 1、QFD的基本原理 2、QFD的实施步骤 3、QFD的优势与应…...
powershell@文件大小排序@文件夹磁盘占用分析
文章目录 abstractpowershell对于列出子目录大小的支持状况按文件大小排序指定目录下所有文件 扩展的专用函数介绍统计目录或文件的大小👺对指定目录以友好的格式列出所有文件和子目录的大小函数灵活性说明👺 综合用例其他相关软件易用系列 abstract 在…...
详解c++多态---上
virtual关键字 1.可以修饰原函数,为了完成虚函数的重写,满足多态的条件之一。 class Person { public:virtual void BuyTicket() { cout << "买票-全价" << endl; } };class Student : public Person { public:virtual void Buy…...
emWin5的图片半透明之旅
文章目录 目标过程直接使用png (失败了)通过 BmpCvt.exe 转换一下(成功了)通过bmp转 (半成功吧) 补充工程结构整理 目标 显示半透明效果,类似png那种,能透过去,看到背景。 过程 直接使用png …...
【RabbitMQ 项目】项目概述
项目概述 一.角色划分二.服务器模块概述1.本地模块2.网络模块3.服务器模块 三.模块详细划分1.服务端2.客户端 一.角色划分 该项目的模型是一个跨主机的生产消费模型,有三种角色:生产者,消费者,中间人。对应就要实现三个大模块&…...
【VSCode】VSCode Background 背景插件辅助窗口程序
前排贴上Github项目链接 GitHub窗口项目链接 这是一个基于VSCode上由shalldie上传的background扩展制作的windows窗口程序。 该程序旨在通过窗口程序尽可能的完善该扩展原有的功能。 background - shalldie 的最大优势是我目前仅在其扩展上发现了UseFront的选项,这…...
2025_NIPS_CELLVERSE: Do Large Language Models Really Understand Cell Biology?
一、文章主要内容总结 该研究聚焦于大语言模型(LLMs)在细胞生物学领域的应用能力评估,核心贡献是构建了首个统一的语言中心型基准数据集CELLVERSE,并通过系统实验揭示了LLMs在单细胞分析任务中的表现与局限: 背景与问题:现有单细胞分析方法存在缺乏统一性(需为不同多组…...
实时屏幕翻译工具Translumo:打破游戏、视频和软件的语言壁垒
实时屏幕翻译工具Translumo:打破游戏、视频和软件的语言壁垒 【免费下载链接】Translumo Advanced real-time screen translator for games, hardcoded subtitles in videos, static text and etc. 项目地址: https://gitcode.com/gh_mirrors/tr/Translumo 在…...
Qwen3.5-9B中微子:探测器结构理解+相互作用模拟+数据分析提示
Qwen3.5-9B中微子:探测器结构理解相互作用模拟数据分析提示 1. 项目概述 Qwen3.5-9B是一款拥有90亿参数的开源大语言模型,具备强大的逻辑推理、代码生成和多轮对话能力。该模型支持多模态理解(图文输入)和长上下文处理ÿ…...
别再死记硬背U-Net结构了!用PyTorch手撸一个,从代码反推设计思想
从零实现U-Net:用PyTorch代码拆解医学图像分割的核心设计 在医学影像分析领域,U-Net以其独特的对称结构和跳跃连接机制,成为细胞分割、肿瘤检测等任务的黄金标准。但很多开发者即便看过网络结构图,在实际编码时仍会困惑࿱…...
目标金额是否能被给定硬币组成或者最少硬币数量
在编程中,判断一个目标金额能否由一组给定的硬币组成,这是一个经典的“硬币找零”或“完全背包”问题。 最常用且高效的解决方法是使用动态规划 核心思路 将这个问题分解成更小的子问题。 是不是在想当前金额,怎么知道能够由哪些已知硬币凑成…...
RVC模型在Claude API生态中的应用探索
RVC模型在Claude API生态中的应用探索 最近和几个做AI应用的朋友聊天,大家不约而同地提到了一个痛点:现在的AI助手,比如Claude,文本对话能力已经很强了,但声音总是冷冰冰的合成音,缺乏个性和温度。能不能让…...
考虑气电联合需求响应的气电综合能源配网系统协调优化运行代码功能说明
考虑气电联合需求响应的 气电综合能源配网系统协调优化运行 该文提出气电综合能源配网系统最优潮流的凸优化方法,即利用二阶锥规划方法对配电网潮流方 程约束进行处理,并提出运用增强二阶锥规划与泰勒级数展开相结合的方法对天然气潮流方程约束进行处理&…...
造相-Z-Image本地部署全记录:无需网络,RTX 4090专属优化方案
造相-Z-Image本地部署全记录:无需网络,RTX 4090专属优化方案 你是否曾为部署一个AI绘画模型而焦头烂额?面对复杂的依赖、漫长的网络下载、以及最令人头疼的“爆显存”问题,是不是感觉手头这张强大的RTX 4090显卡有力使不出&#…...
告别系统臃肿与隐私泄露:Win11Debloat让Windows效率提升80%
告别系统臃肿与隐私泄露:Win11Debloat让Windows效率提升80% 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other changes to declutter a…...
JDK 1.8 vs JDK 17:jvisualvm 安装配置全攻略(附Visual GC插件避坑指南)
JDK 1.8 vs JDK 17:jvisualvm 安装配置全攻略(附Visual GC插件避坑指南) 在Java开发的世界里,JVM性能调优一直是开发者进阶的必修课。而jvisualvm作为Oracle官方提供的免费性能分析工具,可以说是我们窥探JVM内部运行状…...



















