我直接开干,不啰嗦背景,不讲 ACID 那些教科书话,咱就盯着一个点聊:MySQL 里的 MVCC 到底是个啥,底层咋实现,生产环境里它怎么背刺过我。整篇文章会有点长,我尽量用“人话”说清楚,顺手把我踩过的几个大坑拎出来,很多问题,说白了都是对 MVCC 理解不透彻导致的。MVCC 在 MyS...
很多人写 SQL 写了好几年,EXPLAIN 也看过,慢查询也调过,但真要问一句:“我在客户端敲下 SELECT ... 回车后,MySQL 里面具体一步一步干了啥?”大概率只能说个连接 → 解析 → 优化 → 执行这种级别的回答。看个面试还能糊弄一下,上了生产就完全不够用了。我这篇就干一件事...
很多人一提到 CI/CD,就容易说得很玄,什么自动化交付、持续集成、持续部署,词都没毛病,但真到机器上落地,往往不是那么回事。页面点半天、插件装一堆、脚本复制来复制去,最后构建一跑就红,控制台一片报错,最常见的还是 Jenkins 找不到 Docker,或者镜像打出来了却推不上仓库。我自己在项...
说实话,这个问题我被问过不止一次。每次有人来问我 MySQL 事务是怎么回事,我都发现大家普遍停留在「ACID 四个特性」这个层面,背得挺溜,但真要问你 MySQL 底层是怎么实现原子性的,怎么保证崩了数据不丢,怎么做到多个事务并发跑还互不干扰——很多人就开始含糊了。这篇文章我就把这块彻底说清...
SMTP 与 IMAP ,这俩协议天天见,结果很多朋友只知道“收件服务器、发件服务器”那两栏要填啥,真正出问题了,全是一脸懵。既然问得多,我干脆把这几年在生产环境里折腾邮件系统的经验捋一遍,写成一篇文章。别讲那些教科书式的定义了,咱就从“问题怎么排”和“系统怎么设计”角度,把 SMTP 和 I...
热爱技术的云计算运维工程师,Python全栈工程师,分享开发经验与生活感悟。
欢迎关注我的微信公众号@运维躬行录,领取海量学习资料