闭卷重建数据模型与访问路径的对象、公式、算例、算法与失败边界。
Web系统与云原生 · 小纸条
选一章打印。双面打印(按长边翻页)后沿虚线剪开,每张卡片正面题目、背面答案。
闭卷重建事务边界与隔离的对象、公式、算例、算法与失败边界。
闭卷重建索引、查询计划与写放大的对象、公式、算例、算法与失败边界。
闭卷重建连接池、事务与背压的对象、公式、算例、算法与失败边界。
闭卷重建缓存旁路与一致性的对象、公式、算例、算法与失败边界。
闭卷重建搜索、对象存储与派生数据的对象、公式、算例、算法与失败边界。
闭卷重建备份、恢复与数据校验的对象、公式、算例、算法与失败边界。
对象:事务保证原子提交;隔离级别决定并发现象,业务不变量可能需要锁或约束。;公式:invariant holds at every committed state。;算例:两事务都见剩余名额1并各减1,快照隔离可能写偏斜/超卖,需原子约束。;边界:把ACID当所有业务不变量自动成立。。
对象:表/文档/键值设计从查询、更新、不变量和生命周期出发,而非先选数据库品牌。;公式:cost≈rows examined+random IO+network+serialization。;算例:查询返回10行却扫描100万行,选择率0.001%。;边界:只按对象结构建表;ORM隐藏N+1查询。。
对象:数据库连接是有限资源;池等待需计入deadline,事务期间持有连接。;公式:DB concurrency≤pool size。;算例:池20连接,40并发请求都需连接,至少20个需等待。;边界:应用副本各开过大池总和压垮数据库。。
对象:索引加速匹配/排序但增加写入、空间和维护;联合索引顺序由访问模式决定。;公式:write cost≈base write+number of affected indexes。;算例:一条插入更新主表和4个索引,共至少5个结构写。;边界:每个字段都建索引;函数/类型转换使索引失效。。
对象:搜索索引、对象存储、分析表是派生或专用存储,需要源数据、版本和重建路径。;公式:derived=F(source,event version,processor version)。;算例:数据库已提交但搜索索引延迟5秒,读后搜有短暂不一致。;边界:把搜索索引当唯一真源;删除源后对象/CDN残留。。
对象:cache-aside读miss回源再填充,写通常先数据库后失效;需处理击穿、并发与旧值回填。;公式:cache key includes tenant,query,version。;算例:写DB后删缓存,与并发旧读回填交错可能把旧值重新放入缓存。;边界:先删缓存再写DB窗口更大;缓存失败阻止主写提交。。
对象:备份只有成功恢复并校验业务一致性才算有效;复制不等于历史备份。;公式:RPO由备份/日志间隔决定,RTO由发现+恢复+校验决定。;算例:恢复30分钟、校验15、切流5,总RTO至少50分钟。;边界:只看backup job成功;加密密钥与备份一起丢失。。