浅谈Mysql的BTree 浅谈MySQL的BTREE索引MySQL的MyISAM、InnoDB引擎默认均使用B+树索引(查询时都显示为“BTREE”),本文讨论两个问题: 为什么MySQL等主流数据库选择B+树的索引结构? 如何基于索引结构,理解常见的MySQL索引优化思路? 为什么索引无法全部装入内存索引结构的选择基于这样一个性质:大数据量时,索引无法全部装入内存。 为什么索引无法全部装入内存?假设使用树结构组织索引 2022-04-14 Mysql
线程池ThreadPoolExecutor分析 线程池生命周期及状态 RUNNING: 接收新任务,也处理队列任务 SHUTDOWN: 不接收新任务,但是处理队列任务 STOP: 不接收新任务,不处理队列任务并且中断正在进行的任务 TIDYING: 所有任务都终止,workerCount为零,线程状态转为TIDYING,将运行terminated()方法 TERMINATED: terminated() 方法执行完毕 任务 2022-03-17 Java
Mysql 表按时间分区(内附脚本) mysql表分区的几种方式参阅:MySQL表的四种分区类型 常用的按时间分区可以按照年、月、日等条件用来分区,因为是按时间条件分区所以选用RANGE分区方式。 分区的条件判断: LESS THAN:如果是数值就是小于等于,时间则是小于。 LESS THAN MAX:不等于。 IN:包含于某某区间。 按实际分区的时间函数选用: 按日分区切分时的条件可以用day()、to_days()时间函数,需要 2022-03-17 Mysql
管理分布式Session的几种方式 分布式Session实现方式: 1.客户端存储(基于Cookie管理) 这种方式每次发起请求的时候都需要将Session数据放到Cookie中传递给服务端。 优点:不需要依赖额外外部存储,不需要额外配置。 缺点:不安全,易被盗取或篡改;Cookie数量和长度有限制,需要消耗更多网络带宽。 适用场景:数据不重要、不敏感且数据量小的情况。 2.Session复制在支持Session复制的 2022-03-17 Session
最长有效括号 最长有效括号给你一个只包含 '(' 和 ')' 的字符串,找出最长有效(格式正确且连续)括号子串的长度。 提示: 0 <= s.length <= 3 * 104 s[i] 为 '(' 或 ')' 123456789101112131415161718192021class Solution { publ 2021-08-29
Stream ToMap(Collectors.toMap) Stream ToMap(Collectors.toMap)List TO MapList Stream 转换 Map时向collect()方法中传递Collector对象,对象由Collectors.toMap()方法返回。 实例:123456789101112131415List<GroupBrandCateBO> list = new ArrayList<>( 2021-08-29
kafka如何保证消息不丢失 前言kafka对于消息的可靠性保证。作为消息组件,保证消息不丢失,是非常重要的。 那么kafka是如何保证消息不丢失的呢? 前提条件任何消息组件不丢数据都是在特定场景下一定条件的,kafka要保证消息不丢,有两个核心条件。 第一.必须是已提交的消息即committed messagekafka对于committed message的定义是,生产者提交消息到broker,并等到多个broker确认 2021-08-29