大家好,我是 Snow Hide,作为《左耳听风》这个专栏的学员之一,这是我打卡的第 34 天,也是我第 34 次进行打卡这种操作。
今天我温习了该专栏里叫《性能设计篇之“缓存”》、《性能设计篇之“异步处理”》、《性能设计篇之“数据库扩展”》的文章。
关键词总结:Cache Aside 更新模式(失效、命中、更新、问题、解决方案)、Read/Write Through 更新模式(Read Through、Write Through)、Write Behind Caching 更新模式(Write Back、套路、问题、复杂度)、缓存设计的重点(外部缓存集群、数据分片、命中率、一致性问题、缓存生命周期、LRU 策略、锁竞争、爬虫保护机制)、异步处理设计(异步任务处理、前台系统、任务处理系统、Push 推模型、Pull 拉模型、Pull 的好处、推拉结合)、事件溯源(解决的问题、事件回放、事件重播、事件可变性、事件记录、结合异步处理)、异步处理分布式事务(一致性、交易凭证、注意点)、异步处理设计要点(故障导致的问题、幂等性支持、整体业务事务问题、是否适合异步处理、任务积压情况、异步处理本质)、读写分离 CQRS(优点、缺点、CQRS / 命令与查询职责分离(语义区分、语义区分好处))、分库分表 Sharding(影响数据库性能的两个大问题(数据库操作、数据库数据量)、两个关注点(分库策略、数据访问层)、分片策略、分片模式注意点)、数据库扩展设计重点(水平分片注意事项)。
所学总结:
性能设计篇之“缓存”
Cache Aside 更新模式
失效
命中
更新
问题
解决方案
Read/Write Through 更新模式
Read Through
Write Through
Write Behind Caching 更新模式
Write Back
套路
问题
复杂度
缓存设计重点
外部缓存集群
数据分片
命中率
缓存生命周期
LRU 策略
锁竞争
爬虫保护机制
性能设计篇之“异步处理”
异步处理设计
异步任务处理
前台系统
任务处理系统
Push 推模型
Pull 拉模型
Pull 的好处
推拉结合
事件溯源
解决问题
事件回放
事件可变性
事件记录
结合异步处理
异步处理分布式事务
一致性
交易凭证
注意点
异步处理设计要点
故障导致的问题
幂等性支持
整体业务事务问题
是否适合异步处理
任务积压情况
异步处理本质
性能设计篇之“数据库扩展”
读写分离 CQRS
优点
缺点
CQRS / 命令与查询职责分离
语义区分
语义区分好处
分库分表 Sharding
影响数据库性能的两大问题
数据库操作
数据库数据量
两个关注点
分库策略
数据访问层
分片策略
分片模式注意点
数据库扩展设计重点
水平分片注意事项
末了
重新总结了一下文中提到的内容:加速数据访问、典型的缓存模式、Cache Aside 更新模式、Read/Write Through 更新模式、Write Behind Caching 更新模式、各模式的优缺点、缓存设计重点、缓存集群、数据一致性、LRU 锁竞争、爬虫问题、异步通讯、提高系统稳定性及容错能力、统筹任务、提高系统吞吐量、异步通讯设计、推拉结合模型‘配合事件溯源、存储事务一致性、异步处理事务一致性、最终一致性、异步处理设计要点、单主多从读写分离、CQRS、语义区分、命令和查询、事件溯源方式、分库分表策略、数据访问层抽象、数据库扩展设计重点。