二叉查找树是二叉树中最常用的一种类型,也叫二叉搜索树。顾名思义,二叉查找树是为了实现快速查找而生的。不过,它不仅仅支持快速查找一个数据,还支持快速插入、删除一个数据。 这些都...
二叉查找树是二叉树中最常用的一种类型,也叫二叉搜索树。顾名思义,二叉查找树是为了实现快速查找而生的。不过,它不仅仅支持快速查找一个数据,还支持快速插入、删除一个数据。 这些都...
以下所有的知识都是基于 InnoDB 的,因为MyISAM不⽀持事务。事务的隔离级别四种读未提交(READ UNCOMMITTED) :⼀个事务还没提交时,它做的变更就能被别...
redo log⼤家都知道,也就是我们对数据库操作的⽇志,他是在内存中的,每次操作⼀旦写了redo log就会⽴⻢返回结果,但是这个redo log总会找个时间去更新到磁盘,...
唯⼀索引普通索引选择难题 面试经常被问,核⼼是需要回答到change buffer,那change buffer⼜是个什么东⻄呢?当需要更新⼀个数据⻚时,如果数据⻚在内存中就...
索引下推 你已经知道了前缀索引规则,那我就说⼀个官⽅帮我们优化的东⻄,索引下推。 所以这个语句在搜索索引树的时候,只能⽤ “敖”,找到第⼀个满⾜条件的记录ID1,当然,这还不...
Spring 注解使用:控制 Redis 缓存更新使用 SpringBoot 可以很容易地对 Redis 进行操作。Java 的 Redis 的客户端常用的有三个:jedis...
1.幂等性 幂等(idempotent、idempotence)是一个数学与计算机学概念,常见于抽象代数中。在编程中一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行...
本文会提到52条SQL语句性能优化策略。 1、对查询进行优化,应尽量避免全表扫描,首先应考虑在where及order by涉及的列上建立索引。 2、应尽量避免在where子句...
本文内容:1、 什么是链表?2、 链表共分几类?3、 链表的 C 实现! 总表:《数据结构?》 工程代码 Github: Data_Structures_C_Implemen...
引言 很多人刚开始学习数据库的时候可能接触到的都是关系型数据库RDS,它是基于行式存储的思想来进行数据存储的;但是数据库存储领域还有一个不容小觑的力量,非关系型数据库NoSQ...
1.粘包和拆包 粘包和拆包是TCP网络编程中不可避免的,无论是服务端还是客户端,当我们读取或者发送消息的时候,都需要考虑TCP底层的粘包/拆包机制。 TCP是个“流”协议,所...
异步的概念和同步相对。当一个异步过程调用发出后,调用者不能立刻得到结果。实际处理这个调用的组件在完成后,通过状态、通知和回调来通知调用 Netty 中的 I/O 操作是异步的...
1 ChannelHandler及其实现类 ChannelHandler 接口定义了许多事件处理的方法,我们可以通过重写这些方法去实现具 体的业务逻辑。API 关系如下图所示...
Netty 的设计主要基于主从 Reactor 多线程模式,并有一定的优化逐步递进来讲一下Netty模型 1.简单版Netty模型 ·BossGroup 线程维护 Selec...
1.原生 NIO 存在的问题 NIO 的类库和 API 繁杂,使用麻烦:需要熟练掌握 Selector、ServerSocketChannel、SocketChannel、B...
常 用 的Channel实现类类:FileChannel , DatagramChannel ,ServerSocketChannel和SocketChannel 。File...
缓冲区(Buffer):缓冲区本质上是一个可以读写数据的内存块,可以理解成是一个数组,该对象提供了一组方法,可以更轻松地使用内存块,,缓冲区对象内置了一些机制,能够跟踪和记录...