linux性能调优 学习笔记

性能调优是什么

性能调优是对计算机上的硬件,操作系统和应用有相当深入的了解,调节三者之间的关系,实现整个系统(包括硬件,操作系统,应用)的性能最大化,并能不断的满足现用的业务需求。

为什么要性能调优

通过性能调优,可以使用更少的硬件资源,来支撑更大量的业务,从而达到节省硬件投资的目的。同时,可以在资源有限,不能扩容的情况下,提升系统的响应能力,从而为用户带来更好的体验。

什么地方需要性能调优

性能调优主要包含三大块(硬件,操作系统,应用程序),其实还有一块就是程序本身的优化,开发人员根据需求开发出来的程序本身就需要性能调优,但对于我们运维人员来说接触的不较少而已。

1.硬件(CPU,内存,磁盘,网卡。。。)

2.操作系统(进行,文件系统,内核。。。。)

3.应用程序(nginx,mysql,redis。。。)

如何进行性能指标调优?

确认性能指标

这里以一个网站系统为例,对网站平台的性能指标只要有五个,分别是:

1.吞吐量:单位时间内,系统处理请求的数量。体现系统处理请求的能力

2. QPS: 每秒的查询率,他表示每秒钟能处理多少次请求(发出请求--> 处理完成 -->返回结果)

3.TPS: 每秒能处理完事务的次数。(事务: 指的是用户对服务器发起请求,服务器做出反应的过程)

用户对服务器发起请求时开始计时,服务器放回结果结束计时。依次来计算使用的时间和完成事务的次数。一个事务对应着多个请求

4.并发数: 系统同时处理的请求数和事务数。主要指系统可以同时容纳正常使用系统的用户量。

5.RT:  响应时间。一般表示平均响应时间。客户端发起请求的时间开始到服务段返回响应的这段时间

响应时间由请求发送时间,网络传输时间和服务器处理时间三个部分组成。

了解QPS,TPS,并发数和响应时间的概念后,下面看看他们的联系

QPS=并发量/平均响应时间

并发量=QPS * 平均响应时间

平均响应时间单位为m/秒

QPS是和并发量连在一起的,如果离开了并发量填QPS是没有意义的。

测试系统的性能,需要我们收集系统的QPS/TPS,并发数,响应时间这几个重要的指标。具体步骤是:

1.确认QPS/TPS,并发数,响应时间这几个值

2.找到对应的性能测试工具

3.开始进行性能测试

4.反馈结果并提交测试报告。

通过性能分析工具,为性能调优提供有效的性能监控数据,常用的命令一下:

1.vmstat,htop,iostat:检测CPU瓶颈

2.free,vmstat,smem:监测内存瓶颈

3.iostat,iotop:检测磁盘I/O瓶颈

4.netstat ,mtr,traceroute:检测网络连通性以及带宽瓶颈

性能调优过程

确定调优目标-->调优步骤--->验证调优结果

在进行调优的时候,要遵行如下原则:

1.如果你没有彻底弄懂某个系统参数时,千万不要对这个参数进行随意的改动。

2.每次只对一种系统资源进行调试,或CPU,或内存,或磁盘。

3.每次改动尽量少的参数设置,推荐每次只修改一个设置。

4.性能已达到要求时就不要随意改动,并且做好参数的状态监控。

5.分析一项系统资源时,使用多种工具,往往有意想不到的结果。

通过性能监控,验证调优效果

调优参数完成后,性能监控很重要,因为通过监控,可以发现和验证我们的调优是否达到了想要的效果,监控包括服务器性能检测和服务的性能检测。必须要检测的操作系统指标有如下几个:

1.CPU使用率 2.CPU负载 3.内存使用率 4.磁盘I/O 5.网络流量 6.磁盘空间 7.系统进程

寻找性能瓶颈的基本步骤

系统调优基本思路:

1.根据客户的性能问题描述,结合系统工具收集信息,捋出基本调优思路

2.在开始调优之前,必须先备份好,以防止调优出现问题时能及时快速恢复

3.打开监控系统监控分析系统性能,通过调整前和调整后的监控数据,判断调优效果。

4.调优时一次只修改一个参数,这样就可以判断此参数的修改是否有效

5.通过不同角度,多个方面的尝试,逐渐缩小瓶颈范围。直至找出原因。

6.回到第三步,通过监控,直到系统性能恢复到正常水平,调优才算结束。

需要收集的性能数据信息

调优之前,需要收集的问题总结起来,有如下部分。

1.服务器信息,主要是硬件配置,系统版本,运行状态(CPU,磁盘,内存,网络)值

2.服务器日志信息,主要是系统日志,如dmesg输出,/var/log/messages内容等

3.应用程序占用的系统资源,以及应用系统的日志输出。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值