标签:
Linux服务器的性能往往受到CPU、内存、磁盘I/O、网络带宽等方面的影响,对于每个Linux后台服务器开发人员来说,掌握一些常用的性能调优工具是十分有必要的。下图几乎涵盖了一个系统的方方面面,图中的工具都可称得上是性能调优方面的“瑞士军刀”,短小精干、功能强大。
1、strace
在Linux中,进程不能直接访问硬件设备,当进程需要进行读取磁盘文件,接收网络数据等访问硬件设备 的操作时,必须由用户态模式切换至内核模式,通过系统调用访问硬件设备。strace可用来跟踪程序使用的底层系统调用,可输出系统调用被执行的时间点以及各个调用耗时、调用名、参数、返回值及信号名等。
2、netstat
netstat主要用于显示各种网络相关信息,如网络连接、网络接口和路由表,由此可得知目前都有哪些网络连接在正常工作。在Linux中,TCP/IP具备一定的容错机制,在数据发送或接受出现错误时,会尝试重发。如果出错的数目比例比较高时,这时可使用netstat进行跟踪。
3、perf
在实际开发中,如果无法充分利用cache或者频繁的进行内核/用户态切换(不必要的系统调用),都将导致性能下降。此时可使用perf进行诊断。perf不仅可以分析指定应用程序的性能问题,也可以用来分析内核的性能问题,当然也可以同时分析应用代码和内核,从而全面了解应用程序中的性能瓶颈。
4、top
top可用来监控linux系统中各个进程的资源占用状态,比如cpu、内存等。 如果系统出现了比较缓慢的现象时,可通过top快速找出异常进程。
待续。。。
鼎峰小胡
QQ.2881064155
Skype.2881064155@qq.com
标签:
原文地址:http://www.cnblogs.com/supper-hjx/p/5935494.html