项目起因2021 年,我在面试中多次被问到数据库内核相关问题,比如 “MySQL 是如何做性能优化的?”、“InnoDB 的 MVCC 怎么实现?”。
那时我发现,虽然平时用 MySQL 很多,但对它底层协议、存储引擎、事务机制,其实了解不深。
那段时间我也刚学 Go,想真正把它用在系统编程里。
于是我给自己定了个挑战:用纯 Go 从零写一个 MySQL 兼容数据库内核,目标对齐 MySQL 5.7 协议,参考 InnoDB 的设计,支持事务、MVCC、Redo/Undo 日志…。
go为了编译速度减少了很多编译优化?为什么不能提供优化编译模式来提升运行效率?是太懒还是另有隐情?
鱼缸能不能做到一直不换水还很清澈?
Swift 和同时代的其他语言比起来怎么样?
golang为什么要内置map?
为何同是象棋,国际象棋的棋子可以做的那么有设计感,而中国象棋的棋子形式似乎比较单一?
2025年,歼16与美军机50分钟缠斗,为什么知乎上没有任何消息?