MySQL DBA
分类: LINUX
2013-03-07 14:08:10
优化的背景:1.日常调优,以获得资源消耗的减少和性能的提升。
2.性能瓶颈,部分模块性能瓶颈带来整个系统性能的瓶颈。
对于一个服务器系统。几个重要的性能指标:cpu,memory,io,network。面对一个需要优化的linux系统,第一件事要做的是确定系统的性能情况以及瓶颈所在,一些分析工具:
1. vmstat 虚拟内存统计信息。
2. iostat io统计信息。
3. sar 全面的系统分析工具。
4. nmon 具备友好界面的全局统计信息。
5. tcpdump 网络抓包分析工具。
6. dstat 全局统计信息工具
7. iftop 网路状态统计工具
8. 其他一些常用的(top,uptime,free,netstat等)。
通过应用这一类工具,可得到一系列系统性能的统计数据。下面需要对这些数据做分析以确认瓶颈。
cpu
如果数据显示cpu的使用较高:us+sy大于80%,同时运行的进程数大于等于cpu核数,id值持续很小。这些都说明cpu的负载相当高,并不意味着需要提升cpu,特别是cpu忽然暴涨的情况,一般不是cpu性能上限问题。
memory
物理内存以及虚拟内存的使用,如果物理内存使用率很高,交换区被频繁使用,很容易确定系统内存资源是否需要增加。
io
io性能经常是系统的瓶颈所在,特别是数据库系统,大量的读写操作使得硬盘负载常应接不暇,而使用vmstat,iostat 等工具可以检测出io的负载情况。
network
网络的连通性能及负载情况可通过iftop等得到统计信息。网络通信是否良好,网卡负载是否达到上限。从而判断系统性能瓶颈是否在网卡上面。
相关笔记:
网络文章:
20个常见的瓶颈:
http://highscalability.com/blog/2012/5/16/big-list-of-20-common-bottlenecks.html
性能调优攻略:
tcpdump:http://www.cnblogs.com/ggjucheng/archive/2012/01/14/2322659.html
raid技术: