日常Bug排查-偶发性读数据不一致
日常Bug排查-偶发性读数据不一致前言日常Bug排查系列都是一些简单Bug的排查。笔者将在这里介绍一些排查Bug的简单技巧,同时顺便积累素材。Bug现场业务场景先描述这个问题出现的业务场景。这是一个支付的场景,如果支付成功了,我们就把支付状态置为success(主单据更新)同时写入支付成功
聊聊数据库连接池 Druid
在 Spring Boot 项目中,数据库连接池已经成为标配,然而,我曾经遇到过不少连接池异常导致业务错误的事故。很多经验丰富的工程师也可能不小心在这方面出现问题。 在这篇文章中,我们将探讨数据库连接池,深入解析其实现机制,以便更好地理解和规避潜在的风险。
数据库系列:事务的4种隔离级别
数据库系列:MySQL慢查询分析和性能优化 数据库系列:MySQL索引优化总结(综合版)数据库系列:高并发下的数据字段变更数据库系列:覆盖索引和规避回表数据库系列:数据库高可用及无损扩容数据库系列:使用高区分度索引列提升性能数据库系列:前缀索引和索引长度的取舍数据库系列:MySQL引擎
数据库系列:RR和RC下,快照读的区别
数据库系列:MySQL慢查询分析和性能优化 数据库系列:MySQL索引优化总结(综合版)数据库系列:高并发下的数据字段变更数据库系列:覆盖索引和规避回表数据库系列:数据库高可用及无损扩容数据库系列:使用高区分度索引列提升性能数据库系列:前缀索引和索引长度的取舍数据库系列:MySQL引擎
数据库系列:前缀索引和索引长度的取舍
数据库系列:MySQL慢查询分析和性能优化 数据库系列:MySQL索引优化总结(综合版)数据库系列:高并发下的数据字段变更数据库系列:覆盖索引和规避回表数据库系列:数据库高可用及无损扩容数据库系列:使用高区分度索引列提升性能1 背景有时候我们需要在字符类型的字段上建设索引,但是如果该字
数据库系列:使用高区分度索引列提升性能
数据库系列:MySQL慢查询分析和性能优化 数据库系列:MySQL索引优化总结(综合版)数据库系列:高并发下的数据字段变更1 背景我们常常在创建组合索引的时候,会纠结一个问题,组合索引包含多个索引字段,它的顺序应该怎么放,怎样能达到更大的性能利用。正确的索引字段顺序应该取决于使用该索引的查
InnoDB 全表扫描和全主键扫描一样吗?
《explain 显示 count(*) 使用了索引,实际却是全表扫描》提到了全表扫描和对主键索引进行全索引扫描,我把这两者等价对待了。对主键索引进行全索引扫描对应的就是本文标题中的全主键扫描。因为有两位读者就全表扫描、全主键扫描这两种读取数据的方式和我进行了交流,为了弄清楚两者到底是不是
my.cnf 增加一个配置项,MySQL 不能启动了
有一天,同事问了我一个来自客户的问题:在 my.cnf 中增加系统变量 foreign_key_checks 之后,MySQL 就启动不了了。我们尝试通过 SET 命令修改 foreign_key_checks,成功了。查看官方文档,明明也是有这个系统变量的:为什么把 foreign_key
别B+树了,out了
今天这篇先聊聊其内部引入 Blink Tree 来替换 B+Tree 的事情
SpringBoot+MyBatisPlus实现读写分离
前言随着业务量的不断增长,数据库的读写压力也越来越大。为了解决这个问题,我们可以采用读写分离的方案来分担数据库的读写负载。本文将介绍如何使用 Spring Boot + MyBatis Plus + MySQL 实现读写分离。读写分离原理读写分离是指将数据库的读操作和写操作分别放到不同的数据库
搭建Mysql主从复制
MySQL主从复制是一种常用的数据库高可用性解决方案,可以提高数据库的可用性和性能。本教程将介绍如何搭建MySQL主从复制。1、MySQL 支持的复制类型基于语句的复制(STATEMENT):在主服务器上执行的 SQL 语句,在从服务器上执行同样的语句。MySQL 默认采用基于语句的复制,效率
MySQL 自适应哈希索引(一)构造
曾经优化慢查询时,经常在日志中看到 truncate,当时一直疑惑 truncate 为什么会慢。转到数据库方向之后,又碰到过几次 truncate 执行时间过长,导致 MySQL 短暂卡住的问题。经过源码分析和同事测试验证,发现这几次的问题都跟自适应哈希索引有关,所以,深入研究下自适应哈希索
记一次线上问题 → Deadlock 的分析与优化
数据库的加锁是比较复杂的,不同的数据库的加锁实现也是有区别的,本篇中的死锁案例还是比较好分析的
记一次字符串末尾空白丢失的排查 → MySQL 是会玩的!
一天,小伙伴找到我,他说他碰到一个很奇怪的问题;他说:明明表名的入参是 test ,为什么展示到界面的记录包括 test 这条记录?
MySQL 幻读问题
幻读问题产生的本质原因是:如果事物中操作的都是快照读,那么是不会产生幻读问题的。
hive 行转列,列转行一些函数总结
在Hive中,collect_set函数用于将某一列中的元素收集到一个集合中,并去除重复的元素。这个函数适用于处理需要对列中的元素进行聚合并获取唯一值的情况。
xplain 显示 count(*) 使用了索引,实际却是全表扫描
这篇文章依然源于一位读者的提问:explain 显示 count(*) 使用了索引,optimizer trace 却显示为全表扫描,这是为什么?去年,我写过一篇关于 count(distinct) 实现原理的文章《count(distinct) 玩出了新花样》。还记得当时调试源码的过程中,如
美团面试官:可重复读隔离级别实现原理是什么?(一文搞懂MVCC机制)
可重复读隔离级别实现原理是什么?它和MVCC又有什么关系?什么是Read View?
为什么需要插入意向锁?
不久之前,有位读者问了一个关于 insert intention waiting 的问题,回答过程中,我还把意向锁(intention lock)和插入意向锁(insert intention lock)搞混了,实际上这是 2 种不同类型的锁。为此,我研究了下插入意向锁,于是有了这篇文章。本
MySQL 不一样的 NULL
你好,我是yes。前不久看到面试群里有同学发表了一个疑问~
答读者问:唯一索引冲突,为什么主键的 supremum 记录会加 next-key 锁?
本文缘起于一位读者的提问:插入一条记录,导致唯一索引冲突,为什么会对主键的 supremum 记录加 next-key 排他锁?我在 MySQL 8.0.32 复现了问题,并调试了加锁流程,写下来和大家分享。了解完整的加锁流程,有助于我们更深入的理解 InnoDB 的记录锁,希望大家有收获。
还傻傻搞不懂MySQL事务隔离级别么(图文并茂,保证你懂!)
并行事务可能出现的问题,具体表象就是脏写,脏读,不可重复读,幻读。MySQL通过隔离不同程度地规避这些问题,MySQL隔离级别有4种,包括:读未提交(READ UNCOMMITTED)、读提交 (READ COMMITTED)、可重复读 (REPEATABLE READ)、串行化 (SERIALIZ
mysql invalid conn排查
mysql invalid conn排查服务监控系列文章服务监控系列视频问题背景服务使用golang ,客户端库是go-mysql-driver ,系统测试环境频繁但是不总是报出invalid conn 错误,但实际拿sql执行时却是正常执行。排查思路原因分析客户端使用了无效连接由于
我又和redis超时杠上了
经过上次redis超时排查一次redis超时排查经历,并联系云服务商解决之后,redis超时的现象好了一阵子,但是最近又有超时现象报出,但与上次不同的是,这次超时的现象发生在业务高峰期,在简单看过服务器的各项指标以后~
慢查询性能优化实践
项目组接到两家客户反馈,部分生产统计报表查询缓慢,甚至某些报表无法查询出1个月的统计数据。
不要用 in + 子查询
你好,我是yes。前两天我的 VIP 用户向我抛出了一个 SQL 问题,他的 MySQL 是 8.x版本:大概意思如下 sql :select * from A where id in (  sele
慢查询日志中的 Lock_time 从哪里来?
经常关注慢查询日志的读者,和 Lock_time 应该算是老相识了,大家对这位老相识了解有多少呢?研究 Lock_time 之前,我对它的了解,仅限于它表示锁等待时间。至于它包含哪些锁等待时间、怎么计算得到的,我并不清楚。所以,我一直有个困惑:为什么有些 SQL 执行时间很长,Lock_time
记一次 MySQL 主从同步异常的排查记录,百转千回!
你好,我是悟空。本文主要内容如下:目录一、现象最近项目的测试环境遇到一个主备同步的问题:备库的同步线程停止了,无法同步主库的数据更改。备库报错如下:从库同步报错信息完整的错误信息:Relay log read failure: Could not parse

有开始,就会有进​步!

在追求性能的道路上,记录每一刻的成长!源码解读,编程技巧,外文翻译,技术实践,线上案例等等,记录自己,启发他人!

专家作者推荐

巡山小汪

关注微信公众号《解Bug之路》,有问题请在公众号中咨询:) 无论多么艰苦的时刻,都不要忘记,辉煌的未来,在你的眼中闪耀!

飞哥开发内功

《深入理解Linux网络》作者,腾讯搜狗十年工程师,公众号「开发内功修炼」作者!

踩刀诗人

聊聊技术,唠唠段子,偶尔做菜写诗,欢迎关注我的公众号 踩刀诗人

Brand

搜索关注微信公众号【架构与思维】:撰稿者为bat、字节的几位高阶研发/架构,专注技术分享。

专题推荐

相比于后端遇到的各种复杂性能问题,前端的性能相对简单,但是简单不代表容易,前端的技术更新迭代快,那么针对性能问题自然也会出现各种变种,需要各种新的工具和思路。
HeapDump性能社区将引进更多前端相关大佬,来给大家分享前端性能的那些事儿。本期先从前端性能基础开始:
5篇文章7047阅读量
数据库最容易成为整个系统的性能瓶颈,本期专题向大家介绍日常工作中常见的数据库性能问题,干货+性能调优实践帮你攻克数据库性能瓶颈!
8篇文章20414阅读量