
出版社: 电子工业
原售价: 238.00
折扣价: 164.30
折扣购买: 性能之巅(第2版):系统、企业与云可观测性
ISBN: 9787121435874
Brendan Gregg 是Joyent公司的首席性能工程师,负责分析云计算环境的性能和扩展,覆盖从小型到大型的云计算环境和软件栈的所有级别。他是DTrace一书的主作者(Prentice Hall出版社,2011年),是Solaris Performance and Tools一书的合著者(Prentice Hall出版社,2007年),撰写了许多与系统性能相关的文章。他之前是Sun Microsystems公司的性能主管和内核工程师,同时也是性能顾问兼培训师。是他开发了DTraceToolkit 和 ZFS L2ARC,他所开发的许多DTrace脚本都收录在Mac OS X和Oracle Solaris 11的默认发行版中。性能的可视化是他最近从事的工作之一。
译者:徐章宁,目前就职于小红书,担任 SRE 专家工程师,负责混沌工程等云原生可观测性项目的研发。曾就职于百度上海研发中心和 EMC 中国研发中心,担任 SRE 运维工程师。对于云原生计算领域发生的一切变革抱有热忱的态度,对大型系统运维和性能调优有浓厚兴趣。吴寒思,目前就职于 eBay 中国研发中心,担任软件技术经理,负责广告系统、推荐系统和搜索系统的研发。曾就职于 EMC 中国研发中心,担任文件系统研发工程师。对大数据、机器学习和性能调优有浓厚兴趣。余亮目前就职于百度,担任 SRE 资深研发工程师。负责混沌工程、智能运维等稳定性工程项目的研发。曾就职于Synopsys 上海研发中心,担任 SWE 工程师。喜欢钻研架构优化、性能调优等技术。
推荐序 大数据、云计算和人工智能都是热门概念,也是现实问题。很多团队都面对类似的技术抉择:如何用开源软件构建机群、如何选择云服务、如何设计高效的分布式 Web 服务,或者如何开发高效的分布式机器学习系统,当面对这些问题的时候,最好能从一些重要的可度量的方面进行定量的分析和比较。可是哪些方面重要,以及如何度量呢? 古往今来有很多重要的系统度量问题,比如如何度量网络繁忙程度,如何得知某台机器是否还活着,服务中断是因为某个进程锁死了还是机器出问题了,或是我们的机群中用 SSD 替换硬盘的比例应该多大,等等。 这些问题的答案都不简单—正确答案往往构建在对操作系统的深刻理解上,甚至构建在统计学和统计实验的基础上。可是通常我们是在繁重的业务压力下应对这些问题的,所以只能尽快找一个“近似”的测量办法。这终非长久之计—在我们经历了很多问题之后,可能会发现自己从未深刻理解问题,没有深入思考,没有沉淀经验,没有获得成长。 如果有意深入理解问题,借助前人的经验是可以事半功倍的。只是关于操作系统的教科书不能为我们提供足够的基础知识。操作系统如此复杂,几乎涉及计算机科学的所有方面。学校往往只能基于简化的示范系统教学,比如 Minix。但实际工作中使用的操作系统,比如 Linux 和 Solaris,有更多需要学习和理解的地方。 我做分布式机器学习系统有 8 年了,其间很多时候要面对系统分析的问题。但是坦诚地说,大部分情况下我都只能尽快地找一个“近似”方法,处于没有时间深入琢磨上述系统问题的窘境。看到本书之后,我不禁眼前一亮。这本书从绪论之后,就开始介绍“方法”—概念、模型、观测和实验手段。作者不仅利用操作系统自带的观测工具,还自己开发了一套深入分析观测结果的脚本,这就是有名的 DTrace Toolkit(大家可以直接找来使用)。本书介绍的实验和观测方法,包括内存、CPU、文件系统、存储硬件、网络等各个方面。而且,在介绍方法之前会深入介绍系统原理—我没法期望更多了! 很高兴看到这一经典名著的中文版问世。因为被邀作序,有幸近水楼台先得月,深 受教益。感谢译者和编辑的努力。相信读者朋友们定能从中受益。 ——王益 LinkedIn 高级主任分析师 《性能之巅(第2版):系统、企业与云可观测性》介绍了操作系统和应用程序的概念、策略、工具和调优,并用基于Linux的操作系统作为主要示例。对这些工具和技术的深刻理解对于今天的开发者来说至关重要,这个新版本针对这些工具和技术做了全面的修订和更新。实施本书中讲述的策略能够让最终用户有更好的体验并让运维成本更低,对于按操作系统实例收费的云计算环境尤为如此。 系统性能专家和畅销书作者Brendan Gregg总结了相关的操作系统、硬件和应用程序理论,即使是之前从未做过性能分析的人员也能迅速上手。不仅如此,Gregg还对包括扩展BPF在内的新工具和技术做了深入的讲解,并展示了如何从云、网络和大规模企业系统中获得丰厚收益。 本书的主要内容包括: ●硬件、内核和应用程序的内部结构,以及它们的工作机制 ●对复杂系统进行快速性能分析的方法 ●优化CPU、内存、文件系统、磁盘和网络 ●使用perf、Ftrace和BPF (BCC和bpftrace)进行复杂的剖析和跟踪 ●与云计算管理程序相关的性能挑战 ●更有效地实施基准测试