Linux 性能优化流程

我们从如下三方面分析:

1、性能指标有哪些?

2、性能如何剖析?

​3、性能调优方法有哪些?

一:CPU

1.平均负载 --uptime

2.cpu使用率(用户cpu,系统cpu,iowait,软中断,硬中断,窃取cpu,客户cpu)--mpstat,pidstat

3.上下文切换(自愿上下文切换、非自愿上下文切换)--vmstat

4.cpu 缓存命中率 --top,perf top

5.增对不同的场景CPU上下文切换分为:进程上下文切换、线程上下文切换、中断上下文切换

top/ps ; vmstat; mpstat; sar ; pidstat ; strace; perf ; execsnoop(短进程分析); proc 文件系统

cpu绑定; 进程cpu 资源限制; 进程优先级调整; 中断负载均衡; cpu缓存; numa 优化

 

 

 

二:内存

1.内存使用量

2.进程内存使用量

3.缓存与缓存命中率

4.swap 使用量

free; top; sar;  vmstat;  cachestat; cachetop;  memleak;  proc 文件系统

1.利用缓存与缓存区

2.减少swap 使用

3.减少动态内存分配

4.优化numa

5.限制进程内存资源

6.使用HugePage

三:网络

1.吞吐量(BPS, QPS, PPS)

2.延迟

3.丢包

4.tcp重传;

ethtool; sar; ping; netstat/ss  ;  ifstat; ifconfig;  tcpdump;  wireshark; iptables; traceroute; ipcontrack; perf

1.网卡调优(MTU,队列长度;链路聚合)

2.协议调优(Http,tcp,Overlay)

3.资源控制(Qos)

4.内核调优(Nat 调优;功能卸载;负载均衡; DPDK)

四:磁盘

1.磁盘使用率

2.IOPS

3.吞吐量

4.IOWAIT

dstat; sar; iostat; pidstat; iotop; iolatency; blktrace; fio; perf

  • 1.系统调用
  • 2.i/o 资源控制
  • 3.充分利用缓存
  • 4.raid
  • 5.i/o 隔离

五:文件系统

1.容量

2.IOPS

3.缓存命中率

df; strace; vmstat; sar; perf;proc 文件系统;

1.文件系统选型

2.利用文件系统缓存

3.i/o 隔离

六:Linux 内核

1.BPF

2.perf

3.proc 文件系统

调优内核系统参数选项

七:应用程序

1.吞吐量

2.响应时间

3.资源利用率

Use方法(使用率、饱和度、错误)

进程剖析(进程状态、资源利用率、i/o剖析、系统调用、热点函数、动态追踪)

apm

逻辑简化

编程语言

算法调优

非阻塞i/o

利用缓存和缓存区

异步处理与并发

垃圾回收

在系统开发整体架构优化设计:

1、空间换时间(缓存、缓冲区、冗余数据)

2、时间换空间(压缩编码、页面交换)

3、并行处理(多线程、多进程、分布式)

4、异步处理(异步i/o 、 消息队列、事件通知)

怎么评估性能优化的效果?

1.确定性能量化指标

2.测试优化前的性能指标

3.测试优化后的性能指标

应用程序如何优化?

1.降低cpu 的使用率,减少循环次数、减少递归、减少动态内存分配

2.编译器优化

3.算法优化

4.异步处理

5.多线程代替多进程

6.善用缓存

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lidong

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值