这张表的自增 id 走到头了,我这才注意到。我叹了口气,然后打开了编辑器。我在心里把这条 SQL 的扫描行数算了一遍,量级不对。复盘会上我们把它列成了案例
😂 IT段子
程序员日常、代码趣事、技术梗图,让你在学习之余轻松一笑
分库分表能解决容量问题,也会创造很多新问题。我笑了笑,决定不解释。我把大事务拆成了小批次提交,锁等待立刻消失了。感动,然后我学到了新的一课
我把这个字段的类型定得太随意,三年后要还债。这套流程走下来,我从头到尾又确认了一遍。我把这个连接池的最大连接数调小了,数据库终于喘过气。幸好之前留了备份
分库分表方案讨论了一周,最后数据量根本没到那个级别。我先确认了一遍前置条件,再动手。我把这个批量更新的条数限到了五百,锁等待立刻没了。果然现实比段子更精彩
缓存和数据库不一致的问题,讨论了两天最后决定用延迟双删。我盯着屏幕沉默了十分钟。我把这个批量更新的条数限到了五百,锁等待立刻没了。真香定律准时生效
发现一条线上 SQL 在事务里做了全表更新,我的手开始抖。我深呼吸了一下,决定从最可疑的地方查起。我把这个连接池的最大连接数调小了,数据库终于喘过气。好在最后有惊无险
我把这条 SQL 交给优化器,它有自己的想法。我把相关的记录都翻了出来做对照。我在心里把这条 SQL 的扫描行数算了一遍,量级不对。我把这条经验写进了团队 wiki
这条链路的瓶颈最后总是落在数据库上。我把它记在心里,没跟任何人说。我在心里把这次上线的回滚方案想了一遍,希望用不上。从此我多了一条团队规约
我把这个业务的唯一约束想清楚了,然后发现拦住了自己。我在心里把涉及的所有环节都过了一遍。我在心里给这个库的容量算了笔账,撑不过半年。从此我多了一条团队规约
数据库慢查询优化:加了一个索引,查询从 10 秒变成 0.1 秒,感觉自己拯救了世界。这套流程走下来,我从头到尾又确认了一遍。我打开了这张表的分区情况,发现数据全挤在一个区里。办公室安静得能听见键盘声