<Linux性能调优指南>主要思路流程

网上IBM很早放出的一本免费电子书,

十来年了,参考意义还是很大。

国内有翻译成中文在线阅读的版本。

见如下两个URL

Linux Performance and Tuning Guidelines

<Linux性能调优指南>

https://www.gitbook.com/book/lihz1990/transoflptg/details

=========================================

服务器优化思路

管理变更流程

管理变更和性能优化并不直接相关,但可能是成功性能调优最重要的因素。如下可能是第二位考虑的,但是作为提醒,我们强调一下:

  • 在调优之前,实施合理的管理流程变更
  • 永远不要在生产系统上调优
  • 在调优过程中,每次只修改一个变量
  • 反复测试提升性能的参数,有时候,统计来的结果更加可靠
  • 把成功的参数调整整理成文档,和社区分享,即使你觉得它们微不足道。生产环境中获得的任何结果对Linux性能都有很大用处。

 

CPU性能优化选项

第一步是要确保,系统性能问题是由CPU引起的,而不是其它子系统。如果处理器是服务器瓶颈,可以采取如下的办法来增强性能:

  • 使用ps -ef来确保没有不必要的进程程序在后台运行,如果找到了这样的程序,关掉它,或者使用cron让它在非高峰的时候运行。
  • 通过top找到非关键的、CPU密集型进程,然后用renice修改它的优先级。
  • 在基于SMP的机器上,尝试使用taskset命令绑定进程到CPU上,避免进程在多个处理器之间切换,引起cache刷新。
  • 基于运行的应用,确认你的应用是否能高效的利用多处理器。来决定是否应该使用更强劲的CPU而不是更多的CPU。例如,单线程应用,会从更快的CPU中受益,增加值CPU个数也没用。
  • 还有其它办法,比如,确保你使用的是最新的驱动和固件,这能影响到他们在系统上的负载。

内存性能调优选项

如果确定是内存瓶颈,可以执行下面的操作:

  • 使用bigpages、hugetlb和共享内存调优swap空间。
  • 增加或者减少页大小。
  • 改善活动和非活动的内存处理
  • 调整page-out率
  • 限制服务器上每个用户可使用的资源
  • 关掉用不到的服务
  • 增加内存

磁盘IO性能调优选项

在确定磁盘子系统瓶颈之后,有如下可能的解决方法:

  • 如果负载是顺序的,压力在控制器带宽上,办法就是添加更快的磁盘控制器。然而,如果负载是随机的,瓶颈可能在磁盘上,增加更多多的磁盘可以帮助增加性能。
  • 在RAID中添加更多的磁盘,把数据分散到多块物理磁盘,可以同时增强读和写的性能。增加磁盘会提升每秒的读写I/O数。另外,请使用硬件RAID而不是Linux提供的RAID软件。如果是硬件RAID,RAID级别对操作系统是不可见的。
  • 考虑使用Linux逻辑卷分区,而不是没有分区的单块大磁盘或者逻辑卷。
  • 把处理负载转移到网络中的其它系统(用户,应用程序或者服务)。
  • 添加RAM。添加内存会提升系统磁盘缓冲,增强磁盘响应速度。

网络性能调优

当网络瓶颈出现时,你应该试试如下的办法:

  • 确保网卡配置和路由器交换机配置相匹配。
  • 修改子网的组织方式
  • 使用更快的网卡
  • 适当调整IPv4的TCP内核参数。有些安全相关的参数调整会提升性能,详见下一章。
  • 如果可能的话,更换网卡,然后重新检测性能。
  • 如果可能的话,增加网卡,绑定成一个网卡组。
时间: 2024-10-11 10:09:55

<Linux性能调优指南>主要思路流程的相关文章

Linux性能调优的优化思路

Linux操作系统是一个开源产品,也是一个开源软件的实践和应用平台,在这个平台下有无数的开源软件支撑,我们常见的有apache.tomcat.nginx.mysql.php等等,开源软件的最大理念就是自由.开放,那么Linux作为一个开源平台,最终要实现的是通过这些开源软件的支持,以低廉的成本,达到应用最有的性能.因此,谈到性能问题,主要实现的是Linux系统和应用程序的最佳结合. 博文大纲:一.性能问题综述二.影响Linux性能的因素三.分析系统性能设计的人员四.调优总结 一.性能问题综述 系

Linux性能调优,从优化思路说起

Linux操作系统是一个开源产品,也是一个开源软件的实践和应用平台,在这个平台下有无数的开源软件支撑,我们常见的apache.tomcat.mysql.php等等,开源软件的最大理念是自由.开放,那么linux作为一个开源平台,最终要实现的是通过这些开源软件的支持,以最低廉的成本,达到应用最优的性能.因此,谈到性能问题,主要实现的是linux操作系统和应用程序的最佳结合. 一.性能问题综述 系统的性能是指操作系统完成任务的有效性.稳定性和响应速度.Linux系统管理员可能经常会遇到系统不稳定.响

推荐书籍:《Java性能调优指南》

本书作者是Java性能和Java HotSpot 虚拟机领域的佼佼者,帮助你利用现代软工实践提高性实战生涯中总结能,避免常见错误,从技巧和窍门. 利用G1克服并行.串行和CMS垃圾收集器的局限性了解G1  GC收集的各个阶段,包括年轻代和老年代在G1的引擎下微调您的应用程序确定潜在优化方案,解释实验结果,并付诸行动探索的HotSpot虚拟机内部使用热点VM服务代理分析.分流,并解决不同的热点 <Java性能调优指南>主要展示了如何在当今先进的多核硬件和复杂的操作系统环境下,系统且主动地提高Ja

最新最全linux系统调优指南(centos7.X)

linux系统调优指南(centos7.X) 欢迎关注我最新博客地址:https://owelinux.github.io/ 关闭不必要的服务(如打印服务等) for owelinux in `chkconfig --list | grep "3:on" | awk '{print $1}'`; do chkconfig $owelinux off; done for owelinux in crond network sshd rsyslog sysstat iptables; do

linux 性能调优工具参考 (linux performance tools)

之前发现几张图对于linux使用者有着较强的参考意义,下面对其进行简单备忘: # linux 静态信息查看工具 # linux 性能测试工具 benchmark # linux 性能观测工具 # linux 性能调优工具  资源来源链接:http://www.brendangregg.com/linuxperf.html 保持更新,其中不少工具都有使用过,欢迎大家留言交流:更多内容请关注 cnblogs.com/xuyaowen; 原文地址:https://www.cnblogs.com/xuy

linux性能调优总结

系统性能一直是个热门话题.做运维这几年也一直在搞性能调优,写这个文章也算是对工作的总结. 讲调优第一步是,要讲为什么要调优?也就是系统分析,分析还需要有指标,做好性能监控的情况下,看到确实需要调优才能进行.不能为了调优而 “调优“ 那不是调优,那是破坏. 性能分析的目的 找出系统性能瓶颈 为以后的优化提供方案或者参考 达到良好利用资源的目的.硬件资源和软件配置. 影响性能的因素 想确定有哪些因素,首先确定你的应用是什么类型的?例如: cpu密集型例如web服务器像nginx node.js需要C

【Linux性能调优一】观大局:系统平均负载load average

要测试linux系统性能及调优,首先要从全局检查linux的平均负载 1.什么是平均负载 load average 系统平均负载被定义为在特定时间间隔内运行队列中的平均进程数.也可简单理解为平均活跃进程数. 简单来说,平均负载是指单位时间内,系统处于可运行状态和不可中断状态的平均进程数,也就是平均活跃进程数,它和 CPU 使用率并没有直接关系. 所谓可运行状态的进程,是指正在使用 CPU 或者正在等待 CPU 的进程,也就是我们常用 ps 命令看到的,处于 R 状态(Running 或 Runn

Linux性能调优

Linux操作系统下挂载硬盘分区的几种方法 简单三步制作会动的Windows 7桌面墙纸 大多数 Linux 发布版都定义了适当的缓冲区和其他 Transmission Control Protocol(TCP)参数.可以修改这些参数来分配更多的内存,从而改进网络性能.设置内核参数的方法是通过 proc 接口,也就是通过读写 /proc 中的值.幸运的是,sysctl 可以读取 /etc/sysctl.conf 中的值并根据需要填充/proc,这样就能够更轻松地管理这些参数.清单 2 展示在互联

Linux性能调优之gprof和oprofile

为了更好的优化程序性能,我们必须找到性能瓶颈点,“好钢用在刀刃上”才能取 得好的效果,否则可能白做工作. 为了找到关键路径,我们可以使用profilng技术,在linux平台上,我们可以使用gprof和oprofile工 具. gprof是GNU工具之一,它在编译的时候在每个函数的出入口加入了profiling的代码,运行时统计程序在用户态的 执行信息,可以得到每个函数的调用次数,执行时间,调用关系等信息,简单易懂.适合于查找用户级程序的性能瓶颈,对于很多时间都在内核态执行的程 序,gprof不