package com.bda.icetea; import com.google.common.collect.Lists; import org.apache.commo...
package com.bda.icetea; import com.google.common.collect.Lists; import org.apache.commo...
DLedger技术替换broker的CommitLog,由DLedger来管理CommitLog 每一个broker上都有一个DLedger组件 1.DLedger基于Raf...
1.messageQueue 顾名思义queue,肯定是指消息队列,和topic的关系是 一个消息主题对应多个messageQueue 属于broker上的一个数据分片,一个...
1.页面数据静态化+多级缓存 将页面数据从数据库获取的动态获取方式改成缓存成静态页面获取的形式 多级缓存是指CDN+Nginx+Redis的缓存架构 2.扣减库存问题 答题的...
1.nameServer集群 nameserver用来存储每台broker的节点信息, 检测broker的心跳,每10s检测一次,超过120s没有心跳的broker会从nam...
1.由于设置了值SoftRefLRUPolicyMSPerMB=0导致频繁触发full gc jvm在反射过程中动态生成的类的class对象,他们都是SoftReferenc...
1.java对象引用类型 https://blog.csdn.net/weixin_31884015/article/details/114082371 强引用(不被回收) ...
explain执行计划重要参数有id,type,key,rows,extra 1.id 表示执行的顺序,id越大越先执行,id一样时从上往下执行。 2.select_type...
1.索引的规则 1.1.等值匹配 假设索引(A) select * from table where A=xxx就是走索引的 1.2.最左侧列匹配 假设索引(A,B) sel...
1.索引的基础概念 大量插入数据的时候,会有一个数据页分裂的过程. 其中的自增主键是从小到大依次排序的,所以每一次的插入都会伴随数据行从一个数据页挪动到另一个数据页.要快速从...
1.独占锁(防止脏写) 独占锁叫做写锁 并发事务修改一行数据时,会先判断这行数据是否有被加锁. 如果未加锁就会添加一个独占锁,包含了自己的trx_id和状态和这行数据关联起来...
1.undo log版本链 每一行数据都有两个隐藏字段 一个是trx_id(事务ID),一个是roll_pointer(指向执行事务之前的undo log中的旧值),那么在u...
1.什么是脏读,脏写,不可重复读,幻读 1.1.脏读和脏写实际上都是操作到了未提交的数据上导致的问题 脏读:A事务在读取数据的同时,B事务在修改数据.而A事务读取到了B事务未...
1.导致lru链表中热数据区被挤到尾部节点的可能原因 由于mysql有预读的机制,会导致不是热数据的预读页会随着缓存页的读取会被放到lru链表的最头部 还有mysql有全量扫...
这三个链表都是基于描述数据块的双向链表 他在buffer pool中占用的内存仅仅只是他的基础结点(40字节左右) 1.free链表:buffer pool初始化完成后 将空...
1.为啥要使用buffer pool buffer pool是基于内存的,可以在磁盘中加载一些数据进来,进行增删改操作. 以此来减少了直接对磁盘的增删改的io操作,可以让增删...
1.mysql执行sql大致流程 web容器中发起sql语句执行的请求 ->从数据库连接池中拿到连接 ->连接请求mysql中的sql接口 ->sql解析器进行sql语句的步...
在前一篇的文章《HotSpot垃圾回收算法概述》里面,对于Serial, Parallel和CMS几种垃圾回收器做了比较详细的描述。但是对于G1的叙述是比较粗糙的。这篇文章则...
1.分为了很多小块region 2.动态扩充新生代 从默认初始值的5%扩充到最大的60% 老年代最大是40% 3.大对象不会进入老年代还是直接给到小块中存储 既不属于新生代也...