行数据批量delete时,InnoDB如何处理自增ID,是一个潜在的大坑。整个实验步骤如上图:第一步:建表,设定自增列;第二步:指定id=1插入,锚定第一行是id是1;第三步:不指定id,依赖自增机制,插入3行;画外音:此时id应该变为2,3,4了?第四步:delete删除所有记录;画外音:坑就容易
继续回答星球水友提问:沈老师,MyISAM只支持表锁,但网上文章却说,在并发插入量比较大的时候,比较适合使用MyISAM,这矛盾吗?这个问题,涉及MySQL表锁的一些细节,借着这个问题,系统性说下表锁的“所以然”。画外音:网上不少文章只说结论,不说为什么,容易让人蒙圈。MySQL表锁知识系统性梳理。
长文《memcache核心技术点》阅读较低,重启1分钟系列,快消时代,碎片时间可能大家更喜欢短文,更喜欢技术实践类文章吧。画外音:说实话,技术思路类文章(WHY,HOW),比技术实践类(WHAT)更难写。如何能让自己的shell显得不那么业余?下面6点实践一定有用。画外音:本篇文章源自Google的
上篇《缓冲池(bufferpool),彻底懂了!》介绍了InnoDB缓冲池的工作原理。简单回顾一下:MySQL数据存储包含内存与磁盘两个部分;内存缓冲池(bufferpool)以页为单位,缓存最热的数据页(datapage)与索引页(indexpage);InnoDB以变种LRU算法管理缓冲池,并能
上一篇介绍了《ServiceMesh究竟解决什么问题?》,当微服务架构体系越来越复杂的时候,需要将“业务服务”和“基础设施”解耦,将一个微服务进程一分为二:一个进程实现业务逻辑,biz,即上图白色方块一个进程实现底层技术体系,proxy,即上图蓝色方块,负载均衡、服务发现与治理、调用链…等诸多基础设
在《消息顺序性为何这么难?》中,介绍了一种为了保证“所有群友展示的群消息时序都是一致的”所使用的“ID串行化”的方法:让同一个群gid的所有消息落在同一台服务器上处理。ID串行化是如何实现的呢?1.互联网高可用常见分层架构客户端,反向代理层,接入层,服务层,存储层,这是互联网常见的高可用分层架构。画
很多朋友经历了前几天阿里云3小时左右的故障,我司的业务也受到了一定影响,技术的同事一起熬夜奋战,最终观察服务稳定运行了两个多小时。一次事故如一场战役,不管是在故障过程中的处理,还是故障后的总结,除了骂阿里云,我们自己有没有可以改进的空间呢?结合我司昨夜的处理过程,说一下自己的一点想法。画外音:技术人
今天有个实习生问了我一个诡异的问题,“线下一台磁盘大小32G的开发机(虚拟机)打不出日志”,把追查过程和大家分享一下。画外音:贵司开发机磁盘容量多大?先du一下,查看磁盘空间:复制[shenjian@dev02 ~]# du -sch / 16G&n