编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

GOGO!阿里运维专家分享「Linux性能优化笔记」全网首发

wxchong 2024-07-06 23:53:57 开源技术 14 ℃ 0 评论

为什么性能很重要?

如果你曾经坐等计算机完成工作(同时还伴随着敲打桌面、诅咒和好奇:“啥事儿要花这么长的时间?"),你就会知道有个速度快且性能优化良好的计算机系统是多么重要。尽管不是所有的性能问题都能轻易得到解决,但是,了解系统工作缓慢的原因,就意味着有可能采用不同的解决方法:修复软件问题,升级慢速硬件,或者干脆直接把计算机扔出窗外。幸运的是,大多数操作系统,尤其是Linux,都提供了工具用于检测机器运行缓慢的原因。使用一些基础工具,就可以确定系统中哪里速度慢,并修复那些运行效率低的部分。

如果你是系统管理员,那么对系统用户来说,你就有责任使系统在运行时保持适当的性能水平。若系统运行缓慢,用户就会抱怨。如果你能迅速找到并解决问题,他们就会停止抱怨。还有让人高兴的是,如果你能通过调整应用程序或操作系统来解决问题(从而使他们不用购买新的硬件),那么公司的会计就会很开心。知道如何有效使用性能工具就意味着,在性能问题上需要花费的时间是有区别的:几天,还是几个小时。

Linux:优势和劣势

如果你使用Linux,维护它并用其进行开发,你就会处于一种奇特但良好的处境中。你能访问和接触的源代码、开发者和邮件列表是前所未有的,通常,这些邮件列表中会记录着多年前的设计决策。Linux是发现和修复性能问题的优良环境。与之形成鲜明对比的是专有环境,在这种环境下,很难直接接触到软件开发者,同时也很难找到大多数设计决策讨论的书面记录,而访问源代码则几乎是不可能的。除了是一个高效环境外,Linux还具备强大的性能工具,使你能发现并修复性能问题。这些工具可以与那些专门的工具相媲美。

从本书可以学到很多东西,包括:

  • 在不熟悉底层系统的情况下,快速识别系统瓶颈。
  • 针对具体问题,找到并选择正确的性能工具。
  • 深入理解系统性能及优化问题。
  • 掌握优化系统CPU、用户CPU、内存、网络I/O和磁盘I/O的方法,并了解它们之间的关系。
  • 掌握修复计算密集型(CPU-bound )、延迟敏感和I/O密集型(I/O-bound)的应用程序的方法,跟随案例轻松地配置自己的环境。
  • 安装并使用Linux系统的高级全系统分析器—oprofile。

利用本书提供的方法,你可以将组织严密的问题诊断说明发送给最初的开发人员。运气好的话,他们会帮你把问题解决掉。

为什么要学习使用性能工具?

  • 性能良好的系统能用更少的资源完成更多的工作。
  • 性能良好的应用程序能在更老旧的硬件上运行。
  • 性能良好的桌面系统能节约用户时间。
  • 性能良好的服务器能为更多用户提供更高质量的服务。

推荐读者

本书帮助Linux软件开发人员、系统管理员和终端用户利用Linux性能工具在给定系统中找出性能问题。初级性能研究员能学习性能调查和分析的基础知识。中高级性能研究员,尤其是那些已具备其他专有操作系统性能经验的,能学习那些与他们已经熟悉的系统中的命令等价的Linux命令。

本书是如何组织的?

本书向具备不同程度经验的读者教授如何发现并修复性能问题。为了实现这个目标,读者可以挑选本书不同的部分进行阅读,而不必直接看完整本书。

下面将这份文档的内容以图片的形式展现出来,但篇幅有限只能展示部分,如果你需要“高清完整的pdf版”,可以直接私信我获取口令「学习」或【资料】即可领取。

第1章性能追踪建议

第1章介绍查找性能问题的基本方法。其中包含一系列非Linux特有的技巧和建议,它们已被证明对追踪性能问题是有用的。这些指南是性能问题查找的常用建议,可以用于追踪任何类型计算机系统的性能问题。

第2章性能工具:系统CPU

第2章到第8章(本书主要部分)覆盖了各种工具,可用于度量Linux系统中不同的性能统计信息。这些章解释了不同工具度量的对象以及如何调用它们,并为每个工具提供了使用示例。每一章演示的工具分别度量了Linux系统的不同部分,如系统CPU、用户CPU、内存、网络I/O以及磁盘IO。如果一种工具涉及多个子系统,它就会出现在多个章节中。每章都会介绍多个工具,但在给定章节中,只会描述适合特定子系统的对应的工具选项。

第3章性能工具:系统内存

第4章性能工具:特定进程CPU

第5章性能工具:特定进程内存

第6章性能工具:磁盘I/o

第7章性能工具:网络

第8章实用工具:性能工具助手

第9章使用性能工具发现问题

第9章针对Linux,它介绍了面对低性能Linux系统时要采取的一系列步骤,以及如何正确使用之前描述的Linux性能工具来查明产生性能问题的原因。如果你想从行为异常的Linux入手,仅仅只是进行问题诊断,而不想了解工具的详情,那么这一章就是最有用的一章。

第10章性能豁自踪1:受CPU限制的应用程序(GIMP)

第10章到第12章为案例研究,将前面章节描述的方法和工具结合起来,解决现实世界的问题。案例研究突出了用于发现和修复各类性能问题的Linux性能工具,包括以下几类:CPU密集型应用程序,延迟敏感型应用程序,以及I/O密集型应用程序。

第11章性能追踪2:延迟敏感的应用程序(nautilus)

第12章性能追踪3:系统级迟缓(prelink)

第13章性能工具:下一步是什么

第13章对性能工具进行了总结,并展望了Linux性能调优工具的发展机遇。

附录A 性能工具的位置/附录B安装oprofile

本书有两个附录:附录A用一个表格收录了书中介绍的性能工具,给出了每一种工具最新版本的URL,并指明了每种特定的工具都由哪些Linux发行版支持;附录B说明了如何安装oprofile,该工具包含在几个主要的Linux发行版中,其功能强大,但安装困难。

由于篇幅限制,为不影响您的阅读,小编只展示了部分知识,需要获取这份完整的学习资料,私信小编【学习】或【资料】即可获领取方式哦!!!

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表