性能优化是咱们开发中常常要作的事情。一般咱们也就在代码层面作一下优化,抑或在流程层面进行改造,基本不多进行架构层面的优化。架构通常都是推翻重构的。算法
《性能之巅》这本书是二刷。第一次看这本书,留下的惟一印象就是3.3Hz CPU寄存器延时的阐释,让我意识到硬盘读写和网络传输跟CPU运算的巨大差距。数据库
这个差距催生了许多从软件层面解决问题算法跟数据结构,好比用于数据库索引的B+ tree,好比各类排队模型。缓存
所谓性能,其实就两个核心点: 延时和吞吐量。 例如,在《HTTP权威指南》里面讲到HTTP事物性能,最关键就是时延。 从[DNS查询,链接,请求,处理,相应,关闭]整个链路, 性能聚焦区域都是每一个关键节点的耗时。性能优化
负载是性能突变的一个关键点。好比网络繁忙致使性能降低,跟高速公路汽车太多使得速度提不起来同样。因此就出现了不少监控负载的工具,针对各类性能问题,光有被动监控是不够的,得主动剖析。网络
基于这些工具的使用,造成了一套方法体系。好比工具法,USE法,随机变更法...数据结构
作底层性能监控,核心体系仍是有套路的。架构
好比操做系统中,各类观测来源是/proc和/sys文件体系。
好比应用程序中,各类瓶颈基本在IO,缓存,缓冲,垃圾回收这里。ide
接下来介绍了CPU, 内存,文件系统,磁盘,网络 这5大核心知识点。工具
在一本书中,囊括了操做系统的几大核心模块,能够猜想到必然不会面面俱到,因此本书的侧重点是各类命令工具。性能
因此,本书从另外一个层面理解就是一个工具箱介绍手册,分门别类进行了概括,并提供了正确的使用方式。 学了本书后,会让你尽可能不会作用斧头切菜这样的操做。 因为本书跟《设计数据密集型应用》相似,高屋建瓴,因此向CPU,内存,文件系统,磁盘,网络这些核心知识点,仍是须要从其余的书中补充。