关于二叉堆的一些想法


https://labuladong.online/algo/data-structure-basic/binary-heap-implement/#代码实现今天学二叉堆的时候,让gemini给了一份代码,发现它去实现了一个getPathToParent函数,可以很方便的找到插入节点的父节点。//

JVM分代内存模型:新生代 vs 老年代 vs 永久代/元空间


🌱 JVM分代内存模型:新生代 vs 老年代 vs 永久代/元空间 🧠作为JVM内存管理的核心设计,分代收集理论建立在弱分代假说上:“绝大多数对象的生命周期都很短,只有少数对象会长期存活”我们通过内存划分和不同的GC策略,显著提升垃圾回收效率。下面是结构化详解:一、JVM内存区域的逻辑划分 📦

JVM-为什么使用元空间替代永久代?


1. 决绝永久代内存空间限制问题,降低OOM风险永久代是JVM堆内存的一部分,大小固定且需要通过参数手动设置,难以根据应用实际需求动态调整,加载大量类或者使用大量反射的时候,永久代容易发生内存溢出,调优复杂2. 提高垃圾回收效率,降低Full GC频率永久代的垃圾回收与老年代绑定,且永久代中存放的类

火车票订票系统分库分表读扩散优化技术方案


火车票订票系统分库分表读扩散优化技术方案1. 背景与问题描述火车票订票系统中,订单数据量巨大,需支持以下两种主要查询:通过订单号查询单条订单详情通过用户ID查询该用户的所有订单列表为保障系统的高性能和高可用,采用分库分表策略,将订单数据拆分到多个数据库和表中。问题:订单号和用户ID查询的分片规则不一

Java中有哪些集合类,简单介绍


Java中有哪些集合类,简单介绍Java中的集合类主要分为两大类: Collection接口和Map接口实现Collection接口的类是存储对象的集合类实现Map接口存储的是键值对Collection接口下又分为List,Set,Queue接口List接口ArrayList: 基于动态数组,查询速

RocketMQ 消息类型表


RocketMQ 支持的消息类型消息类型描述适用场景特点同步消息发送方发送后阻塞,等待 Broker 返回发送结果 (ACK) 后才继续后续操作。重要的通知、注册(确保消息投递成功才能继续)、对发送可靠性要求高的业务。- 可靠性最高 - 吞吐量相对较低 - 对发送延迟敏感异步消息发送方发送后不阻

TrieMap实现


https://labuladong.online/algo/data-structure/trie-implement/#trieset-的实现https://labuladong.online/algo/data-structure-basic/trie-map-basic/TrieMap 是什

ReentrantLock 核心设计中的两个等待队列

笔记  JUC  Java 

理解这两个队列是掌握 ReentrantLock 乃至整个 Java 并发包(JUC)中锁机制的关键。这两个队列都由 ReentrantLock 的内部工具类 AbstractQueuedSynchronizer (简称 AQS) 来管理。简单来说,这两个队列是:同步队列 (Sync Queue):

AQS

笔记  JUC  Java 

讲讲AQS简单说AQS就是起到了一个抽象,封装的作用,将一些排队,入队,加锁,中断等方法提供出来,便于其它相关JUC锁的使用,具体加锁时机,入队时机等都需要实现类自己控制。英文全称 是AbstractQueuedSynchronizer,AQS的核心是一个FIFO的双向队列,队列中的每个节点都代表一

nacos安装

笔记  Java 

➜ ~ docker run --name nacos-standalone-derby -e MODE=standalone -e NACOS_AUTH_TOKEN=bWVvd3JhaW55eWRzNjY2Nm1lb3dyYWlueXlkczY2NjY= -e NACOS_AUTH_IDENTI