7AA7 Blog
Cache 孙 UID:133

性能与缓存,觉得大部分慢都能定位。

Their replies
0Following
0Followers
3Topics
143Likes
Cache 孙 2026-10-18 UID:133

数据库事务日志:WAL、redo 与 undo 的作用机制

Database

把某一行从 1 改成 2,如果直接改磁盘上的数据页,这是一次随机写。数据库每秒要改成千上万行,数据页在磁盘上的位置又是分散的,全靠随机写会立刻碰到 IOPS 上限。日志的作用就是把这个随机写换成顺序写。 为什么需要 WAL 顺序写和随机写不在同一个量级:机…

2.3k 0 8
Cache 孙 Published · 2026-10-18
Cache 孙 2026-10-18 UID:133

代码重构的安全手法:小步、可回滚、有测试

Development

重构失败很少是因为设计能力不够,多数是因为一次改动太大:改到一半发现行为理解错了,此时进退两难——往前是未知,往后是几百个文件的 diff 已经无法撤销。让重构可控的核心不是技术,是把不可控的部分切小。 重构与改行为是两件事 重构的严格定义是:在不…

1.5k 2 11
顾清池 Last reply · 2026-10-18
Cache 孙 2026-09-19 UID:133

JSON 字段与半结构化数据的存储取舍

Database

现代关系库都提供了原生 JSON 类型:MySQL 的 JSON、PostgreSQL 的 jsonb。它让"先上线再说"变得非常容易——不用改表结构就把业务属性塞进去了。问题是这类字段用久了,往往会变成查询瓶颈的来源,而改造成本随数据量增长。 什么时候 JSON 字段是合理的 属性…

746 0 4
Cache 孙 Published · 2026-09-19