首页 > 编程知识 正文

linux性能优化实战pdf,linux性能优化大师pdf

时间:2023-05-04 21:55:34 阅读:229035 作者:4820

调优必须有性能指标,一开始调优必须确定指标、确定基线、确定目标。

如果可能的话分离问题,删除任何运行于被调查系统的多余的程序或应用!

工具:gnome-system-monitor 图形界面,可以说是TOP的图形化

执行:->gnome-system-monitor

多处理器统计:mpstat,最大的优点是统计信息的旁边显示时间,你就可以找出cpu使用率与时间的关系。

系统活动报告:sar,低开销的,记录系统执行情况信息的方法。

****************************进程性能统计信息******************************

内核时间&用户时间:timeps

time:>>>>>>>>real----是正的或者经过的时间即程序开始到结束执行的时间

>>>>>>>>>>>user----测量的是用户的时间,即CPU代表该程序执行应用代码所花费的时间

>>>>>>>>>>>sys----测量的是系统的时间,即CPU代表该程序执行系统或者内核代码所花费的时间

库时间&应用程序时间:ltrace

细分应用程序时间:gprof

strace善于跟踪进程

 

ltrace跟踪的应用程序对库的调用而不是内核的调用

ps进程状态

valgrind:一个强大的工具,使你能调试棘手的内存管理错误。

kcachegrind:与valgrind密切合作,提供关于被剖析应用程序的高速缓存使用情况的信息信息。

ipcs:可以展示进程间通讯内存的信息

vmstat提供i/o性能情况》》》iostat专门显示磁盘I/O子系统统计信息工具

网络性能工具

mii-tool---媒体无关接口工具

以太网专用硬件工具,主要用于设置以太网设备,也可以提供有关当前设置信息,物理层的底层信息

ethtool:配置和显示以太网设备统计数据方面,包含了更多配置选项和设备统计信息

gkrellm:没有命令行选项用于配置其监控的统计信息

iptraf:实时网络监控工具

netstat:基本的网络性能工具,当前正在使用的网络套接字的数量和类型,以及有关流入和流出当前系统的UDP和TCP数据包数量的特定接口统计数据

性能调查中最有价值的步骤之一就是保存在调查工程中发出的命令和产生的结果

Linux提供两个命令:tee和script

gnumeric 梳理庞大的数据并找出能够表明系统运行情况的趋势与模式;一个轻量级的应用程序,能够快速简便的导入、绘图/分析大量的性能数据。

ldd:用来显示特定的二进制文件依赖的哪个库,ldd有助于跟踪一个应用程序可能使用的库函数的位置。

objdump:对于分析二进制文件和库的各方面,这是个复制而强大的工具

优化应用程序

优化应用程序基本上从以下几方面考虑

内存使用问题启动时间问题加载器引入延迟问题:如果ld统计数据显示在映射所有符号时有明显的延时,那么就尽量减少应用程序使用的库数量和大小,或者尽量预链接库cpu使用(或完成时长)有问题应用程序的磁盘使用 问题应用程序的网络使用问题

诊断系统级性能问题的流程:

优化进程CPU使用情况

经典的性能权衡:增加内存使用量来降低CPU使用量

 

参考书籍《Linux性能优化_[美]+菲利普G.伊佐特_机械工业.pdf》

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。