译者序

译者序

不知读者是否还能回忆起自己第一次碰到性能问题时的场景,可能当时会嘀咕:“明明是我细心打磨的程序,怎么会有性能问题呢?”而当找出问题的症结时,自己也会一拍大腿——这个地方怎么当时就没考虑到呢?的确,性能问题就是这样在程序的各个地方考验着开发者。

随着大数据、高并发越来越多地出现在开发人员的用户场景下,开发人员也越来越关注程序的效率问题。小到一个字符串的拼接,大到各个系统的协调,在实现功能之余,性能的优劣也必须纳入评估范围。

性能调优具有以一敌百的功效。性能好的程序与性能差的程序在执行效率、资源消耗方面有几倍甚至几百倍的差距。这对于公司而言是不小的成本差距。

然而,当开发人员想要学习一下性能调优的方法时,很多时候找到的却是对枯燥的命令行或工具的说明书般的介绍。日本的技术书一直有着生动活泼、通俗易懂的口碑,本书亦是如此。作者从实践经验出发,不仅对各种数据结构、算法进行了说明,还介绍了系统命令等。甚至从软件工程的角度,阐述了性能调优在工程中的作用及重要性。针对火热的虚拟化技术和云平台,作者也进行了特别的说明。便于技术人员在钻研技术的同时,从软件工程的整体来看待性能调优。这就是本书与其他同类图书的不同之处。

本书并不是简单的 Linux 性能调优手册,也不是针对性能测试工程师的教材,而是一本让对性能还一知半解的初学者快速了解性能调优在程序、系统、工程中所扮演的角色及基础方法的书。

如果想从普通工程师向高级工程师甚至架构师方向发展的话,性能调优是一个必须跨过的坎。而要想快速地对性能调优有一个整体认识,本书应该是不错的参考。

本书并不是一本严肃的技术书,书中还列举了各种实际开发过程中会出现的场景,例如在性能出现问题时,操作系统、数据库管理员之间互相踢皮球等。相信当读者读到这些段落时,都会会心一笑。

感谢图灵公司的编辑,仔细校对书中的每一处细节,让本书的准确性和流畅性有了很大的提升。由于水平有限,译文中难免有不足和疏漏之处,读者如有发现,还请不吝批评指正。

目录