Linux性能优化大全.docx
《Linux性能优化大全.docx》由会员分享,可在线阅读,更多相关《Linux性能优化大全.docx(43页珍藏版)》请在第一文库网上搜索。
1、1inux性能优化大全性能优化性能指标高并发和响应快对应着性能优化的两个核心指标:吞吐和延时国B耀落油(0Ha1,J3)App1ications1ibrariesSystemCa11opu3瑞)1inuxKerne1Device应用负载角度:直接影响了产品终端的用户体验系统资源角度:资源使用率、饱和度等性能问题的本质就是系统资源已经到达瓶颈,但请求的处理还不够快,无法支撑更多的请求。性能分析实际上就是找出应用或系统的瓶颈,设法去避免或缓解它们。 选择指标评估应用程序和系统性能 为应用程序和系统设置性能目标 进行性能基准测试 性能分析定位瓶颈 性能监控和告警对于不同的性能问题要选取不同的性能分析
2、工具。下面是常用的1inUXPerformanceToo1s以及对应分析的性能问题类型。到底应该怎么理解“平均负载”平均负载:单位时间内,系统处于可运行状态和不可中断状态的平均进程数,也就是平均活跃进程数。它和我们传统意义上理解的CPU使用率并没有直接关系。其中不可中断进程是正处于内核态关键流程中的进程(如常见的等待设备的I/O响应)。不可中断状态实际上是系统对进程和硬件设备的一种保护机制。平均负载多少时合理实际生产环境中将系统的平均负载监控起来,根据历史数据判断负载的变化趋势。当负载存在明显升高趋势时,及时进行分析和调查。当然也可以当设置阈值(如当平均负载高于CPU数量的70%时)现实工作中
3、我们会经常混淆平均负载和CPU使用率的概念,其实两者并不完全对等: CPU密集型进程,大量CPU使用会导致平均负载升高,此时两者一致 I/O密集型进程,等待I/O也会导致平均负载升高,此时CPU使用率并不一定高 大量等待CPU的进程调度会导致平均负载升高,此时CPU使用率也会比较高平均负载高时可能是CPU密集型进程导致,也可能是I/O繁忙导致。具体分析时可以结合mpstat/pidstat工具辅助分析负载来源。CPUCPU上下文切换(上)CPU上下文切换,就是把前一个任务的CPU上下文(CPU寄存器和PC)保存起来,然后加载新任务的上下文到这些寄存器和程序计数器,最后再跳转到程序计数器所指的位
4、置,运行新任务。其中,保存下来的上下文会存储在系统内核中,待任务重新调度执行时再加载,保证原来的任务状态不受影响。按照任务类型,CPU上下文切换分为: 进程上下文切换 线程上下文切换中断上下文切换进程上下文切换1inux进程按照等级权限将进程的运行空间分为内核空间和用户空间。从用户态向内核态转变时需要通过系统调用来完成。一次系统调用过程其实进行了两次CPU上下文切换: CPU寄存器中用户态的指令位置先保存起来,CPU寄存器更新为内核态指令的位置,跳转到内核态运行内核任务; 系统调用结束后,CPU寄存器恢复原来保存的用户态数据,再切换到用户空间继续运行。系统调用过程中并不会涉及虚拟内存等进程用户
5、态资源,也不会切换进程。和传统意义上的进程上下文切换不同。因此系统调用通常称为特权模式切换。进程是由内核管理和调度的,进程上下文切换只能发生在内核态。因此相比系统调用来说,在保存当前进程的内核状态和CPU寄存器之前,需要先把该进程的虚拟内存,栈保存下来。再加载新进程的内核态后,还要刷新进程的虚拟内存和用户栈。进程只有在调度到CPU上运行时才需要切换上下文,有以下几种场景:CPU时间片轮流分配,系统资源不足导致进程挂起,进程通过SIeeP函数主动挂起,高优先级进程抢占时间片,硬件中断时CPU上的进程被挂起转而执行内核中的中断服务。线程上下文切换线程上下文切换分为两种: 前后线程同属于一个进程,切
6、换时虚拟内存资源不变,只需要切换线程的私有数据,寄存器等; 前后线程属于不同进程,与进程上下文切换相同。同进程的线程切换消耗资源较少,这也是多线程的优势。中断上下文切换中断上下文切换并不涉及到进程的用户态,因此中断上下文只包括内核态中断服务程序执行所必须的状态(CPu寄存器,内核堆栈,硬件中断参数等)。中断处理优先级比进程高,所以中断上下文切换和进程上下文切换不会同时发生CPiJ上下文切换(下)通过vmstat可以查看系统总体的上下文切换情况vmstat5#每隔5s输出一组数据PrOCSmemoryswap10-systemcpurbswpdfreebuffcachesisobiboincsu
7、ssyidwast1OO103388M5412511056OO186012196OOOOO103388145412511076245011761199OOOO103388145412511076429113598OOOO103388145412511076431113298OOOO1033881454125110761046711951198OO1OO10338814541251107642611391O99O9518414541251110874500122894OOOOO103512145416511076455723157312383CS(contextswitch)每秒上下文切换次数i
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Linux 性能 优化 大全