自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(119)
  • 收藏
  • 关注

原创 RocketMQ消息积压,异步方案,缓存策略解决方案

大家好,我是Leo。上一篇我们介绍了MQ分布式事务的相关实现MQ消息丢失,一致性问题在生产,存储,消费阶段如何解决消息重发之后,如何避免重复消费继上篇RocketMQ技术总结二,这篇主要介绍一下消息积压问题如何处理阅读源码的小技巧异步方案提升系统性能MQ的缓存策略基础知识系列3万字聊聊什么是MySQL(初篇)3万字聊聊什么是Redis(完结篇)3万字聊聊什么是RocketMQ (二)2万字聊聊什么是秒杀系统(中)大厂面试系列4万字聊聊阿里二面,保证你看不完聊聊Re

2022-04-14 09:32:38 2903

原创 MQ消息丢失,消息一致性,重复消费解决方案

大家好,我是Leo。这是开端的第三次循环了。当前正在正处于RocketMQ基础原理。3万字聊聊什么是RocketMQ(一)4万字聊聊阿里二面,保证你看不完聊聊Redis面试题2万字聊聊什么是秒杀系统(中)3万字聊聊什么是Redis(完结篇)3万字聊聊什么是MySQL(初篇)本章概括分布式事务由何而来我们在使用MQ在解决实际业务场景中的问题时,往往伴随诸多问题!比如如下图上述两种可能都会导致数据不一致,在业务系统中是 致命的问题!这个时候我们就要保证事务消息。要不全部成功,要不

2022-04-14 09:28:56 11714

原创 3万字聊聊什么是Redis(一)

大家好,我是Leo结束了漫长了MySQL,开始步入了Redis的殿堂。最近在做Redis技术输出时,明显发现进一步熟悉MySQL之后,对Redis的理解容易了许多。或许这就是进步吧!下面的思路部分,可以帮助你更好的理解这篇文章的知识体系。思路整体结构Redis主要是由访问框架,操作模块,索引模块,存储模块,高可用集群支撑模块,高可用扩展支撑模块等组成,Redis还有一些,丰富的数据类型,数据压缩,过期机制,数据淘汰策略,分片机制,哨兵模式,主从复制,集群化,高可用,统计模块,通知模块,调试模块

2021-12-02 16:29:45 1339

原创 Redis你能跟面试官聊哪些?

简介:以上文章讲述的是【数据库性能调优知识与面试知识(详解四服务器性能剖析)】接下来我总结一下【Redis入门知识点】。觉得我还可以的可以加群一起督促学习探讨技术。QQ群:1076570504 个人学习资料库http://www.aolanghs.com/ 微信公众号搜索【欢少的成长之路】Redis是什么?为什么选择Redis?与Redis类似的系统有哪些?挑选一个你比较熟悉的简单讲解一下?Redis的五大数据类型应用场景都是什么?以上讲述了五大类型,Java里完全也可以实现,为什么.

2021-02-12 20:13:01 2854 13

原创 你知道学校里的MySQL与社会中的MySQL有啥区别吗?(详解一基础知识)

个人介绍我在实习的公司主要负责是做Net C# 语言的。工作应用场景主要是工业控制。平时的私活主要是用Java开发的Web网站,C#开发的PC桌面应用软件,微信小程序,Anroid移动端开发,IOS(团队内有专人负责)!万元项目开发幅度高达高达数据库应用原理详解创建数据库:首先会遇到两块知识点第一是字符集的选型与排序规则的选型...

2021-01-31 14:19:52 4348 7

原创 初识Nginx

大家好,我是Leo。接下来我们聊聊Nginx,文章分类主要是。先整理一下。方便粉丝更好的阅读,同时也方便自己不断的复习沉淀。2000字先简单看看,我们过好新年,学习从未停止,技术永无止境,我们一起加油让学习成为习惯。如果阅读过程中有任何疑问,可以关注下面公众号联系我。

2023-03-18 10:58:56 126 1

原创 Nginx 再续前缘

基于数据收发的基本原理,系统利用阻塞提高了 CPU 利用率。为了优化上线文切换,设计了“IO 多路复用”(和 NAPI)。为了优化“内核与监视进程的交互”,设计了三个版本的 API(select,poll,epoll)篇幅问题,这里没有介绍poll。

2023-03-18 10:55:02 142

原创 TCP与UDP的区别(上)

大家好,我是Leo。之前聊了 体系结构,消息流程,TCP粘包 。今天接着粘包继续看看TCP与UDP的区别有哪些。第一次握手:客户端将标志位SYN置为1,随机产生一个值seq=J,并将该数据包发送给服务端,客户端进入SYN_SENT状态,等待服务端确认。第二次握手:服务端收到数据包后由标志位SYN=1知道客户端请求建立连接,服务端将标志位SYN和ACK都置为1,ack=J+1,随机产生一个值seq=K,并将该数据包发送给客户端以确认连接请求,服务端进入SYN_RCVD状态。第三次握手:客户端收到确认后,检查a

2022-06-20 10:54:23 448

原创 3万字聊聊计算机网络(一)

大家好,我是Leo。之前聊过了 MySQL ,Redis,秒杀系统,RocketMQ。近2个月聊聊 计算机网络基础原理。整篇思路就是从体系结构开始,利用一个实际场景一步一步介绍每一层的含义与作用。在五层交互过程中,有一个高频问题就是TCP的沾包问题,我们从沾包入手。分别介绍了什么是沾包,为什么沾包,怎么处理沾包,UDP为什么不沾包等顺序。一系列交互,展开了介绍了影响网络性能的指标。OSI对比TCP/IP去掉了表示层和会话层,把网络层和物理层合二为一,变成了TCP/IP的网络接口层网上冲浪,肯定都会,比如早期

2022-06-11 23:39:29 160

原创 RocketMQ 消息发送流程

大家好,我是Leo。今天聊一下RocketMQ消息发送,重试机制,故障延迟机制,获取路由机制,消息队列的选择消息发送关系图首先放一下Broker Cluster,Broker,Topic,Queue的关系图。因为下文主要会沿着这四块进行梳理发送的三种方式消息发送的三种方式同步:发送者向MQ发送一条消息后,一直等待服务器返回成功才继续下一个。异步:发送者向MQ发送一条消息后,通过回调函数调用消息发布函数继续发送,主线程立即返回。单向:发送者向MQ发送一条消息后,直接返回,不等待消息服务器

2022-05-20 11:01:04 1341

原创 图文并茂,深入了解RocketMQ的内存映射机制

大家好,我是Leo。今天聊一下RocketMQ的内存映射机制传统文件IO机制假如没有使用mmap技术的时候,使用最传统和基本普通文件进行io操作会产生数据多拷贝问题。 比如从磁盘上把数据读取到内核IO缓冲区里面,然后再从内核IO缓冲区中读取到用户进程私有空间里去,然后我们才能拿到这个数据。如上图显示,可以明显的看出数据被拷贝了两次,这样肯定对磁盘读性能是有影响的。同样的如果想给磁盘中写内容,也是得先从用户进程的私有空间把数据拷贝到内核IO缓冲区,然后从内核IO缓冲区再拷贝到磁盘文件。

2022-05-13 10:20:12 478

原创 深入了解RocketMQ的过期删除机制

大家好,我是Leo。今天聊一下RocketMQ的文件过期删除机制本章概括源码定位Broker是RocketMQ的核心,提供了消息的接收,存储,拉取等功能我们可以先从Broker服务入手。从源码可以得知。RocketMQ启用了一个 BrokerController 的 start 函数public static void main(String[] args) { start(createBrokerController(args));}public static Broker

2022-05-06 14:57:41 2198

原创 深入源码聊聊RocketMQ刷盘机制

大家好,我是Leo。今天聊一下RocketMQ的三种刷盘机制。同步刷盘异步刷盘(RocketMQ默认)异步刷盘+缓冲区出自微信公众号【欢少的成长之路】本章概括同步刷盘整个同步刷盘策略由 FlushCommitLogService 与 GroupCommitService 实现。FlushCommitLogService 是 GroupCommitService 刷盘服务的父类,它是一个抽象类,本身没有实现,只是一个标记类,刷盘策略由子类负责完成。同步刷盘时,只有消息被真正持久化到磁

2022-05-05 14:15:55 556

原创 MySQL千万数据调研,order by 原理详解

大家好,我是Leo。之前聊的RocketMQ暂时放放,目前正在调研一个千万数据的处理方案。在做数据库结构优化时,遇到了 order by 调优点的问题。苦思冥想!觉得不了解 order by 的原理,无法把这个细节把控好。于是就来了这一篇。基础知识系列3万字聊聊什么是MySQL(初篇)3万字聊聊什么是Redis(完结篇)3万字聊聊什么是RocketMQ (三)2万字聊聊什么是秒杀系统(中)MySQL千万数据调研,一不小心打挂我系统大厂面试系列4万字聊聊阿里二面,保证你看不完聊聊Red

2022-04-15 23:34:05 1075

原创 MySQL千万数据方案调研,一不小心直接打挂我系统

大家好,我是Leo。之前聊的RocketMQ暂时放放,目前正在调研一个千万数据的处理方案。在准备测试数据的时候,执行了个 select 把我电脑内存打光了。然后OOM,黑屏,宕机。。基础知识系列3万字聊聊什么是MySQL(初篇)3万字聊聊什么是Redis(完结篇)3万字聊聊什么是RocketMQ (三)2万字聊聊什么是秒杀系统(中)大厂面试系列4万字聊聊阿里二面,保证你看不完聊聊Redis面试题本章概括对Server影响当执行下列代码时,因为InnoDB的数据是保存在主键索引

2022-04-14 09:35:10 886

原创 3万字聊聊什么是RocketMQ(一)

大家好,我是Leo。这是开端的第三次循环了。当前正在正处于RocketMQ基础原理。4万字聊聊阿里二面,保证你看不完聊聊Redis面试题3万字聊聊什么是Redis(完结篇)3万字聊聊什么是MySQL(初篇)2万字聊聊什么是秒杀系统(中)为什么需要消息队列?一个大型的系统中,随着业务量,数据体量逐渐变的复杂。越来越多的模块耦合在一起,相互调用,只要有一块出问题,几乎都是致命的。消息队列可以解决哪些场景?异步处理电商系统的整个流程还是非常长的,如果所有流程都同步执行的话。肯定是保证不了那

2022-04-02 13:50:31 789

原创 4万字聊聊阿里二面,能抗多少?

我是Leo。今天聊一下阿里二面。友情提示:觉得长收藏的时候请点右上角,底部弹出菜单点收藏。我怕你拉不到底部聊聊Redis面试题3万字聊聊什么是Redis(完结篇)3万字聊聊什么是MySQL(初篇)2万字聊聊什么是秒杀系统(中)目录导航MySQLSpringMybatis计算机基础与网络RocketMQRedis项目方案算法一、Java1.1 Java重写和重载的区别?重载: 重载就是可以允许在类中存在多个方法名的函数,他们具有相同的名字,但具有不同的参数和不同的参数个

2022-03-28 10:15:48 605 1

原创 2万字聊聊什么是秒杀系统(中)

大家好,我是Leo之前我们介绍了秒杀系统的五大原则,动静分离方案,二八原则,冷热处理的一些理论方案。今天我们接着上一篇,继续介绍一下大并发流量打过来之后,我们如何做一些削峰处理以及服务端的一些优化技巧。推荐阅读3万字聊聊什么是Redis(完结篇)3万字聊聊什么是MySQL(初篇)2万字聊聊什么是秒杀系统(上)流量削峰为什么削峰首先我们说一下为什么要削峰,不削峰会有什么影响呢?类似于公交车一样,早高峰,晚高峰是上车人最多的时候,除了这两个时间段白天运营的时候人是比较少的。这就导致了资源浪费。

2022-01-11 21:36:11 746

原创 2万字聊聊什么是秒杀系统(上)

大家好,我是Leo前段时间介绍了MySQL,Redis的相关技术。大概告一段落了,只能说对这两块技术调优,原理有了初步的认识,后续整个技术栈学的差不多的时候会回来做第二版的修订。推荐阅读3万字聊聊什么是Redis(完结篇)3万字聊聊什么是MySQL(初篇)福利每1-2周会选取前3名发一些书籍每个节日会选取前10名发一些书籍麻烦这三位在我公众号右下角点击联系我,加一下微信,发波书了最近不是在学习MySQL,Redis嘛。我们就找几本经典的书送一下比如:高性能MySQL,Redis设计

2022-01-08 17:18:36 752

原创 3万字聊聊什么是Redis(八完结篇)

大家好,我是Leo上一篇我们介绍了Redis处理并发的问题。Redis分布式锁的实现。RedLock算法。继上篇Redis技术总结七,我们继续聊聊Redis的相关技术!这篇主要是介绍一下Redis事务机制ACID的实现,Redis主从同步的实战细节问题,推荐阅读3万字聊聊什么是MySQL3万字聊聊什么是Redis(六)3万字聊聊什么是Redis(七)Redis如何实现事务ACID什么是ACIDRedis能否实现事务ACID属性呢?我们可以先来解释一下什么是ACIDA原子性

2021-12-30 21:48:33 460

原创 3万字聊聊什么是Redis(七)

大家好,我是Leo上一篇我们介绍了缓存和数据不一致性引发的问题不同的缓存类型以及解决访问。Redis常见的生产问题,缓存雪崩,击穿,穿透,由穿透又聊到了布隆过滤器缓存污染以及应用措施,顺带的聊了一下LFU和LRU的经典之处继上篇Redis技术总结六,我们继续聊聊Redis的相关技术!这篇主要是介绍一下Redis并发的解决方案推荐阅读3万字聊聊什么是MySQL3万字聊聊什么是Redis(一)3万字聊聊什么是Redis(二)3万字聊聊什么是Redis(三)3万字聊聊什么是Redis

2021-12-26 16:12:51 393

原创 3万字聊聊什么是Redis(六)

大家好,我是Leo继上篇Redis技术总结五,我们继续聊聊Redis的相关技术!上一篇我们介绍了缓冲区溢出调优方案。缓存类型,同步直写,异步写回策略。缓存淘汰策略,LRU,LFU算法的实现。脏缓存,干净缓存的判断依据这篇主要是介绍一下 缓存和数据库不一致,缓存污染,Redis解决大并发,Redis实现分布式锁。推荐阅读3万字聊聊什么是MySQL3万字聊聊什么是Redis(一)3万字聊聊什么是Redis(二)3万字聊聊什么是Redis(三)3万字聊聊什么是Redis(四)3万字

2021-12-19 11:03:56 654

原创 3万字聊聊什么是Redis(五)

大家好,我是Leo继上篇Redis技术总结四,我们继续聊聊Redis的相关技术!上一篇我们介绍了外在原因,内在原因对Redis的影响,外内在原因的调优方案。Redis的变慢之后的排查思路,变慢的解决方案。面试高频:内存占用率怎么那么高的一系列分析这篇主要是介绍一下 Redis 缓冲区,推荐阅读3万字聊聊什么是MySQL3万字聊聊什么是Redis(一)3万字聊聊什么是Redis(二)3万字聊聊什么是Redis(三)3万字聊聊什么是Redis(四)缓冲区缓冲区主要就是用一块内存空

2021-12-11 16:52:22 625

原创 3万字聊聊什么是Redis(四)

大家好,我是Leo继上篇Redis技术总结三,我们继续聊聊Redis的相关技术!上一篇我们介绍了主要介绍了Redis的类型的底层实现以及技术,类型选择的依据通过时间序列数据引出多种类型的搭配使用思路以及扩展一下RedisTimeSeries模块的使用。Redis作为消息队列也是高频的面试问题,通过这一问题延伸了List的优劣和Streams的应用这篇主要是介绍一下 Redis 有哪些阻塞原因推荐阅读3万字聊聊什么是MySQL3万字聊聊什么是Redis(一)3万字聊聊什么是Redis(

2021-12-06 09:42:48 173

原创 3万字聊聊什么是Redis(三)

大家好,我是Leo继上篇Redis技术总结二,我们继续聊聊Redis的相关技术!上一篇我们介绍了主从库的由来主从数据一致性原理哨兵集群哨兵投票机制pub/sub机制CAP原理这篇主要是深入Redis的数据结构,五大类型的学习。推荐阅读3万字聊聊什么是MySQL3万字聊聊什么是Redis(一)3万字聊聊什么是Redis(二)思路前几天在群里,看到几个朋友在聊Redis,我感觉很多人把Redis看的太简单了,总觉得Redis就是get,set。其实表面上确实是get,set。但

2021-11-29 14:56:18 378

原创 3万字聊聊什么是Redis(二)

大家好,我是Leo继上篇Redis技术总结一,我们继续聊聊Redis的相关技术!上一篇我们介绍了Redis五大类型的底层实现数据量的增加,性能变慢的问题分析,原理剖析Redis单线程与多线程这个高频话题IO模型,多路复用机制AOF写入策略,重写机制RDB写时复制技术推荐阅读3万字聊聊什么是MySQL3万字聊聊什么是Redis(一)思路Redis主从库的由来随着数据量的增大,单台Redis无法很好的提供读写缓存服务了。于是就采用多台Redis完成更大的访问请求,那么多台Red

2021-11-21 11:24:21 575

原创 3万字聊聊什么是MySQL

关注 欢少的成之路 回复算法,MySQL,8888,6666 领取海量学习资料。有机会参与领书活动!大家好,我是Leo。目前在常州从事Java后端开发的工作。这篇是MySQL面试系列的总结篇。后续会不断修订该系列内容。这个系列会向字节,网易,阿里,腾讯,美团,快手的相关朋友一起整理输出。希望帮助更多的朋友早日入大厂!思路整篇的写作大概就是这样思路。一篇带你熟悉MySQL!篇幅很大,建议先关注,收藏!整个篇幅的知识点全部缩减。为面试系列打造!如果想具体深入研究,请关注公众号浏览其他文章即可!1.

2021-10-31 12:37:53 725

原创 线上数据库挂了,你该如何排查?如何防备?

微信公众号【欢少的成长之路】 送剑指offer,MySQL高性能书籍,算法教程介绍大家好,我是Leo,目前在常州从事Java后端工程师。上篇文章我们介绍了读写分离那些问题,主要从概念,目的,单到多的演变,安全性演变以及六个解决方案为叙述。今天我们聊聊一主多从,如果挂了你会如何快速定位。思路根据读者和用户的反馈,画了一个写作思路图。通过此图可以更好的分析出当前文章的写作知识点。可以更快的帮助读者在最短时间内判断是否为有效文章!外部统计select 1正常情况这里先来聊一下selec.

2021-10-03 14:56:03 813

原创 MySQL是如何保证不丢失数据的呢?

微信公众号:欢少的成长之路介绍大家好,我是Leo,从事Java后端开发。之前的文章大概介绍了WAL机制,如果不太清楚的小伙伴下面第一部分我们可以再回顾一下。今天这里主要介绍一下WAL的安全性这一块。写作思路根据读者与朋友的反馈,所以从这篇文章开始我会加一个写作的思路。可以先让读者了解到学完这一篇下来之后能收获到哪些知识,以防看了半个小时最后啥也没学到,这样的确挺气人的。步入正题binlog 写入机制binlog写入日志这个是比较简单的。提到binlog,必然提到binlog cach.

2021-09-23 14:11:18 136

原创 MySQL有哪些提升性能的方法呢?

微信公众号:欢少的成长之路大家好,前面几章我们介绍了关于锁的规则优化问题。今天我们介绍一下MySQL的那些提升性能的方法?案例正常的短连接模式就是连接到数据库后,执行很少的 SQL 语句就断开,下次需要的时候再重连。如果使用的是短连接,在业务高峰期的时候,就可能出现连接数突然暴涨的情况。MySQL 建立连接的过程,成本是很高的。除了正常的网络连接三次握手外,还需要做登录权限判断和获得这个连接的数据读写权限。max_connections这个参数是控制最大连接数的,一旦数据库处理得慢一些,连接.

2021-09-21 21:51:24 372

原创 改了一行语句,怎么加了那么多锁?

微信公众号:欢少的成长之路在上篇文件我们介绍了由幻读的锁引出了间隙锁这个概念。并且介绍了一下加锁规则优化。今天我们接着上篇文章继续延伸一下技术点。概念原则原则 1:加锁的基本单位是 next-key lock。希望你还记得,next-key lock 是前开后闭区间。原则 2:查找过程中访问到的对象才会加锁。优化优化1:索引上的等值查询,给唯一索引加锁的时候,next-key lock 退化为行锁。优化2:索引上的等值查询,向右遍历时且最后一个值不满足等值条件的时候,next-ke.

2021-09-21 10:23:21 141

原创 幻读是啥,会有什么问题?如何解决?

微信公众号:欢少的成长之路大家好,我是Leo,上篇文章大概介绍了为什么查询一条记录性能慢的原因。今天我们介绍一下幻读的一些相关知识,以及幻读相关的间隙锁,间隙锁死锁的解决方案。概念可重复读两个事务进行数据操作他们是互不干扰的 ,事务先A进行数据查询,事务B进行一次事务修改并进行数据提交,事务A再进行一次查询,数据是不改变的提交读两个事务进行数据操作,事务先A进行数据查询,事务B进行一次事务修改并进行数据提交,事务A再进行一次查询,数据是B修改后的数据。案例幻读是什么如下图所示,我们一.

2021-09-20 22:35:19 1303 1

原创 为什么就查了一行数据,执行那么慢?

微信公众号【欢少的成长之路】今天主要介绍一下查了一行数据,为什么慢到人发慌。剖析一下MySQL的底层运行流程!案例登录校验我不知道大家有没有遇到过这种情况。一个APP客户端在登录用户的时候,明明只查了一条数据,为什么那么慢呢?如何优化这类问题?如何解决这类问题呢?我们接下来分析一下!分析之前先解决一下预备性问题。如下图,执行了SQL语句,按正常结论的话,应该是扫描全表的数量的。那这里为啥是3行呢?explain SELECT * FROM `t_vip` where vipIphone='1.

2021-09-18 17:38:05 127

原创 ElasticSearch 全网最全新手入门教程

前言这篇文件大概搞了好几天吧。从学习到钻研到发布出来。里面可以完美的解决从不懂elasticsearch的人到可以上项目应用!因为内容过于庞大,无法上传博客。内容的图片都是用的本地地址。上传过来的话需要花费很多时间。所以请 百度网盘下载文章内容微信公众号【欢少的成长之路】 输入elasticsearch 获取文档吧...

2021-09-15 16:28:28 485

原创 探讨一下索引失效的几种场景

不经一番寒彻骨,怎得梅花扑鼻香 阅读这篇文章大概需要20分钟!大家好前面我们介绍一下关于实战的知识点。主要应用于表数据比较多的情况下,如何巧妙地从中取出几条数据。今天介绍一下索引失效的几种不好发现的情况。声明一下跟丁奇老师学习的,自己做一个技术总结说到索引失效,今天主要从三个方向分析。函数操作,隐式类型转换,隐式字符编码转换。这里不包含like,!=等函数操作假设你现在维护了一个交易系统,其中交易记录表 tradelog 包含交易流水号(tradeid)、交易员 id(operator)、交易.

2021-09-15 10:05:16 440

原创 一招搞定电商首页随机排序数据算法

不经一番寒彻骨,怎得梅花扑鼻香 阅读这篇文章大概需要20分钟!大家好前面我们了解了order by的实现方式以及内部的涉及到的知识点。今天我们介绍一下关于实战的知识点。主要应用于表数据比较多的情况下,如何巧妙地从中取出几条数据。案例mysql> CREATE TABLE `words` ( `id` int(11) NOT NULL AUTO_INCREMENT, `word` varchar(64) DEFAULT NULL, PRIMARY KEY (`id`)) ENGI.

2021-09-13 23:56:20 460

原创 order by是如何工作的?

不经一番寒彻骨,怎得梅花扑鼻香 阅读这篇文章大概需要20分钟!大家好前面我们了解了count(*)的一些实现方式。今天我们介绍一下order by的实现方式以及内部的涉及到的知识点。常规排序先准备一些案例,假设我们的表是这样的。CREATE TABLE `t` ( `id` INT ( 11 ) NOT NULL, `city` VARCHAR ( 16 ) NOT NULL, `name` VARCHAR ( 16 ) NOT NULL, `age` INT ( 11 ) NOT N.

2021-09-12 16:20:09 257 4

原创 count(*)那么慢能用吗,该怎么办呢?

比较喜欢的一段话:不经一番寒彻骨,怎得梅花扑鼻香 阅读这篇文章大概需要20分钟!大家好前面我们大概了解了为什么delete from表名,表的大小还是没有变小!以及数据删除流程,数据页空洞,online和inplace。重建表的两种实现方式。今天介绍一下为什么count(*)那么慢。count(*)实现方式今天介绍的是MySQL的两种常用的引擎方式。第一种是最早期的MySQL默认引擎:myisam。第二种就是当下最流行的MySQL默认引擎innodb。两种引擎的实现方式各不相同。下面我们来分析一.

2021-09-09 09:22:42 149

原创 面试高频:为什么数据删了,表空间不变呢?

比较喜欢的一段话:不经一番寒彻骨,怎得梅花扑鼻香,学习是枯燥的请大家坚持! 阅读这篇文章大概需要20分钟!大家好前面我们大概了解了为什么MySQL在查询数据的时候,有些时候会 “抖” 一下。以及分析了刷脏页的策略问题以及连坐机制。今天介绍一下为什么delete from表名,表的大小还是没有变小!表结构存储innodb表主要包含两个部分。一个部分是表结构的定义,另一部分是数据。在MySQL8.0之前表结构都是存在后缀 .fm 的文件里。而 MySQL 8.0 版本,则已经允许把表结构定义放在系统数.

2021-09-08 16:11:23 784

原创 面试高频:为什么MySQL会抖一下?

比较喜欢的一段话:不经一番寒彻骨,怎得梅花扑鼻香,学习是枯燥的请大家坚持! 阅读这篇文章大概需要20分钟!大家好前面我们大概了解了如何巧妙的给字符串字段加索引提高查询性能。今天我们介绍一下为什么MySQL在查询数据的时候,有些时候会 “抖” 一下先解释一下抖这个字。有些时候的SQL执行非常快,有些时候执行非常慢。通过explain查看SQL的执行计划还是无用。该走的索引也走了,该优化的细节也优了。那么到底是因为什么所以才导致卡顿一下的呢?首先介绍一下什么是干净页跟脏页。先把路铺好。干净页内存上.

2021-09-08 14:05:13 98

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除