09 2021 档案
摘要:本文介绍一些常见的性能问题,以及在生产环境下应该如何解决。
阅读全文
摘要:本文介绍 MySQL InnoDB 的加锁规则,以及分析加锁时,一些需要注意的点。
阅读全文
摘要:本文介绍什么是幻读,幻读存在的问题和解决方式,以及间隙锁带来的困扰。
阅读全文
摘要:本文介绍锁表和执行慢的例子,以及发生锁表时的排查方法。
阅读全文
摘要:本文介绍三种因为函数转换导致不使用索引的问题。
阅读全文
摘要:总结一下,MySQL 总是使用 “最快” 的排序方案。
阅读全文
摘要:本文介绍 MySQL 随机查询的工作流程、优化随机查询的方式、和临时表。
阅读全文
摘要:本文介绍三种外部排序算法:最小堆、胜者树和败者树,以及为什么外部排序往往用败者树。
阅读全文
摘要:本文介绍 order 的三种排序方式,全字段排序、rowid 排序和索引树排序,以及每种排序方式具体是如何工作的。
阅读全文
摘要:本文介绍 MySQL45 讲中提到的一个用户关注的案例,并记录下可行的处理方案。
阅读全文
摘要:本文介绍 MyISAM 和 InnoDB 如何执行 count 操作,如果是一个需要使用 count 进行大量计数的场景,应该如何设计实现,以及不同 count 操作的效率。
阅读全文
摘要:本文介绍为什么删除了一部分表数据后,表文件大小不变,以及有哪些表空间回收的方式。
阅读全文
摘要:本文介绍 InnoDB 的刷脏控制策略,它是如何控制刷脏速率的,以及一些相关参数。
阅读全文
摘要:本文介绍字符串的前缀索引优缺点,以及字符串区分度不高情况下,可以考虑如何建立索引。
阅读全文
摘要:本文主要介绍跳表的特点,以及如何自己实现一个跳表。
阅读全文
摘要:本文简要介绍优化器选择索引的依据有哪些,有什么办法人为引导优化器选择更优的执行方案。
阅读全文
摘要:本文介绍架构的复杂度来源之高性能。高性能的复杂度主要体现在两面,一是单机实现高性能带来的复杂度,一是集群实现高性能带来的复杂度。
阅读全文
摘要:本文介绍架构的目的是什么,架构是解决什么问题。
阅读全文
摘要:本文介绍MySQL的更新缓存Change Buffer,以及唯一索引和普通索引如何选择。
阅读全文
摘要:本文主要对系统、模块、组件、框架和架构等概念做一个介绍区分,让读者理解架构到底是指什么,以及介绍下架构设计的历史背景。
阅读全文
摘要:本文主要记录学习MySQL实战45讲之基础篇过程中一些新的收获,以及总结主要内容。其中包括SQL如何运行、日志系统、事务隔离、索引和锁等。
阅读全文
摘要:介绍BIO和NIO,以及Reactor通信模型的三种实现方式,包括代码实现细节。
阅读全文
摘要:我们在日常开发中时常使用到**优先队列**这个结构,它可以帮助我们将添加到集合中的元素按指定的优先级排序,真是十分好用的一个结构。虽然对它底层的实现原理有些了解,但是我还是忍不住想自己动手实现一个优先队列。
阅读全文
摘要:为了解决比较高要求的延时场景就有了时间轮模型。下面,来动手实现一个单级时间轮和一个两级时间轮。
阅读全文
摘要:通过介绍Java主线程和子线程的关系,Go的main协程和其他协程的关系来理解Java和Go的程序退出
阅读全文