小苏子
小苏子PDF在线图书

Linux性能优化 内容简介

Linux性能优化 内容简介

Linux性能优化 目录

Linux性能优化 精彩文摘

在当前复杂的大规模系统场景下,好的应用程序性能比以往任何时候都更重要,但是获得这样的性能也更加困难。Linux由于其开源特性,已经具有一系列优化工具,只是这些工具散布在互联网上,工具的相关文档也很少,只有少数专家知道如何综合使用这些工具来解决实际问题。基于此,菲利普G.伊佐特著贺莲、龚奕利译的《Linux性能优化/Linux\Unix技术丛书》介绍了当前常用的Linux优化工具,展示了它们是如何行之有效地提升整体应用程序性能的。通过真实案例,向开发人员演示了怎样定位影响性能的源代码行,使系统管理人员和应用程序开发人员能够迅速深入系统瓶颈,实施解决方案。通过阅读《Linux/Unix技术丛书:Linux性能优化》,你能够:在不熟悉底层系统的情况下,快速识别系统瓶颈。针对具体问题,找到并选择正确的性能工具。深入理解系统性能及优化问题。掌握优化系统CPU、用户CPU、内存、网络I/O和磁盘I/O的方法,并了解它们之间的关系。掌握修复计算密集型(CPU-bound)、延迟敏感和I/O密集型(I/O—bound)的应用程序的方法,跟随案例轻松地配置自己的环境。安装并使用Linux系统的高级全系统分析器——oprofile。无论读者的技术背景如何,性能优化的新手都能通过学习《Linux/Unix技术丛书:Linux性能优化》,掌握一系列清晰实用的优化原则和策略,并获得丰富的Linux知识,解决Linux系统和应用程序的优化问题,增加商业价值并提高用户满意度。译者序前言致谢第1章 性能追踪建议1.1 常用建议1.1.1 记大量的笔记(记录所有的事情)1.1.2 自动执行重复任务1.1.3 尽可能选择低开销工具1.1.4 使用多个工具来搞清楚问题1.1.5 相信你的工具1.1.6 利用其他人的经验(慎重)1.2 性能调查概要1.2.1 找到指标、基线和目标1.2.2 追踪近似问题1.2.3 查看问题是否早已解决1.2.4 项目开始(启动调查)1.2.5 记录,记录,记录1.3 本章小结第2章 性能工具:系统CPU2.1 CPU性能统计信息2.1.1 运行队列统计2.1.2 上下文切换2.1.3 中断2.1.4 CPU使用率2.2 Linux性能工具:CPU2.2.1 vmstat(虚拟内存统计)2.2.2 top(2.0.x版本)2.2.3 top(3.x.x版本)2.2.4 procinfo(从/proc文件系统显示信息)2.2.5 gnome-system-monitor2.2.6 mpstat(多处理器统计)2.2.7 sar(系统活动报告)2.2.8 oprofile2.3 本章小结第3章 性能工具:系统内存3.1 内存性能统计信息3.1.1 内存子系统和性能3.1.2 内存子系统(虚拟存储器)3.2 Linux性能工具:CPU与内存3.2.1 vmstat (II)……第4章 性能工具:特定进程CPU第5章 性能工具:特定进程内存第6章 性能工具:磁盘I/O第7章 性能工具:网络第8章 实用工具:性能工具助手第9章 使用性能工具发现问题第10章 性能追踪1:受CPU限制的应用程序(GIMP)第11章 性能追踪2:延迟敏感的应用程序(nautilus)第12章 性能追踪3:系统级迟缓(prelink)第13章 性能工具:下一步是什么附录A 性能工具的位置附录B 安装oprofile为什么性能很重要?如果你曾经坐等计算机完成工作(同时还伴随着敲打桌面、诅咒和好奇:“啥事儿要花这么长的时间?”),你就会知道有个速度快且性能优化良好的计算机系统是多么重要。尽管不是所有的性能问题都能轻易得到解决,但是,了解系统工作缓慢的原因,就意味着有可能采用不同的解决方法:修复软件问题,升级慢速硬件,或者干脆直接把计算机扔出窗外。幸运的是,大多数操作系统,尤其是Linux,都提供了工具用于检测机器运行缓慢的原因。使用一些基础工具,就可以确定系统中哪里速度慢,并修复那些运行效率低的部分。虽然终端用户非常讨厌速度慢的系统,但对于应用程序开发者而言,他们有着更重要的理由对其程序进行性能调优:程序能够在多个系统上高效运行。如果你编写的程序运行缓慢,又需要快速的计算机,那么你就会排除掉那些拥有慢速计算机的用户。毕竟,并非所有人都具备最新的硬件。性能良好的应用程序能被更多的用户使用,从而带来更大的潜在用户群。另外,如果潜在用户必须在两个具有相似功能的不同应用程序中进行选择,他们通常会选择运行更快或效率更高的那一个。最后,长期使用的应用程序很可能会经过几轮优化,以便适应不同的用户需求,因此,关键是了解如何追踪性能问题。如果你是系统管理员,那么对系统用户来说,你就有责任使系统在运行时保持适当的性能水平。若系统运行缓慢,用户就会抱怨。如果你能迅速找到并解决问题,他们就会停止抱怨。还有让人高兴的是,如果你能通过调整应用程序或操作系统来解决问题(从而使他们不用购买新的硬件),那么公司的会计就会很开心。知道如何有效使用性能工具就意味着,在性能问题上需要花费的时间是有区别的:几天,还是几个小时。Linux:优势和劣势如果你使用Linux,维护它并用其进行开发,你就会处于一种奇特但良好的处境中。你能访问和接触的源代码、开发者和邮件列表是前所未有的,通常,这些邮件列表中会记录着多年前的设计决策。Linux是发现和修复性能问题的优良环境。与之形成鲜明对比的是专有环境,在这种环境下,很难直接接触到软件开发者,同时也很难找到大多数设计决策讨论的书面记录,而访问源代码则几乎是不可能的。除了是一个高效环境外,Linux还具备强大的性能工具,使你能发现并修复性能问题。这些工具可以与那些专门的工具相媲美。即使有着这些令人印象深刻的优势,Linux生态环境还是需要征服一些挑战。Linux性能工具分散性很强。不同的小组根据不同的目标开发工具,其结果就是,这些工具不一定集中在一个地方。有些工具已经包含在标准的Linux发行版中,如RedHat、SUSE和Debian;而有些工具则分散在整个互联网上。如果你尝试解决一个性能问题,首先要做的是了解你需要的工具是否存在,然后再设法找到它们。由于没有哪一个Linux性能工具能够独立解决所有类型的性能问题,因此,还必须了解如何使用多个工具来确定问题出在哪儿。这可能需要点技巧,但是经验会让它变得容易些。虽然大多数常见的方法会有文档记录,但是Linux没有任何指南来告诉你如何整合性能工具以实际解决问题。很多工具或子系统都有调整特定子系统的信息,但是却没有说明如何将它们与其他工具一起使用。许多性能问题涉及系统的多个部分,如果不知道如何同时使用多个工具,就无法解决这些问题。

赞(0)
未经允许不得转载:小苏子图书 » Linux性能优化 内容简介