Linux系统调优02——队列调优原理_第1页
Linux系统调优02——队列调优原理_第2页
Linux系统调优02——队列调优原理_第3页
Linux系统调优02——队列调优原理_第4页
Linux系统调优02——队列调优原理_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 Linux系统性能调优 队列调优原理1本章目标了解队列原理的基本概念了解队列条调优的的基本原则与核心思想2队列原理队列原理的核心思想Littles Law:在1961年由John Little以数学形式表现出来:便于技术人员实现性能管理及对性能调优建立量化的衡量与操作标准;Littles Law L=AWL队列长度:系统中等待处理的请求数量;等同于(number of request) queue lenth;A到达率:若以秒为计算单位,则表示每秒有多少请求到达;W等待时间:处理完成一个请求所需要的时间;等同于延迟、响应时间或驻留时间;3队列原理在实际应用中的体现Littles Law L=

2、AW的体现:例如iostat可以告知每秒钟读写的量以及请求数量。4队列原理的实现方式与调优原则队列的实现方式:队列基于优先级实现并有两种实现方式:针对资源建立多个队列;队列饥饿的现象将普遍存在;只使用一个队列;在队列头部合并一些紧急任务;不管使用哪种方式;通过一定的逻辑性防止队列饥饿;真实的队列算法通常会合并读写两种操作到队列中;队列调优的基本原则:挑选优秀的队列算法来更逻辑、合理和高效地处理请求;控制队列长度:短队列有利于节省内存和减少中断,长队列有利于有效排列和处理请求:一般只能调整L与W,A无法控制;等待时间与队列长短有直接关系,因此尽可能地控制等待时间;往往通过调优只能实现对后端到达率

3、的控制且用户请求和系统处理能力始终存在差异;在大多数情况下需要作出取舍:读相对于写应具备更高的优先级,因此队列优化应该尽可能先满足读的需求;5影响队列的因素等待时间(W)关于等待时间W:包括“队列时间”和“服务时间”队列时间:资源从不可用到可用的时间服务时间:处理请求所用的时间因此:L=A(Q+S)队列调优的策略:减少队列时间和服务时间同时服务时间通常包含系统时间(T sys)和用户时间(T usr)T usr 任务真正在CPU上得到处理的时间;T sys 用于kernel处理上的时间;若程序大量占用系统时间(中断,IO,系统调用),则表明程序效率低,故原则上通过优化应用程序尽量将系统时间缩短

4、;若程序大量占用用户时间则说明程序对CPU的使用较高;在Linux中,通过time命令可以获得T usr和T sys的信息;但 T usr + T sys不一定等于Real Time;排队时间;进程试图和Kernel交互时会等待并sleep;6降低等待时间的原则与方法队列调优的重要方法:找到程序执行的“热点”:例如:# strace -fc elinks -dump 显示系统调用以及随之产生的folk子进程系统调用角度# ltrace -Sfc elinks -dump 显示系统和库的调用以及随之所产生的folk子进程库调用角度(任何一个用户层程序试图访问Kernel层(ring 0)时的过程

5、称为system call,任何应用程序和内核交互都要通过system call,应用程序一般通过glibc来和system call进行交互来间接实现对Kernel的访问。)7降低等待时间的原则与方法队列调优的重要方法:8完成量另外一个重要概念完成量:前提概念:Bandwidth(带宽): data + overhead指在给定时间之内通过的固定大小为单位的数据单位总量同等条件下实际通过的固定大小单位的数据总量Throughput(吞吐量): data only (e.g., Mbps)在给定时间内通过的有用的数据量Overhead(开销): cost of doing work (e.g.

6、, Mbps)传输有用数据时产生的消耗Complete Rate(完成率):处理完成的请求数量;因此:带宽 = 吞吐量 + 开销;因此“吞吐量”理论上即“完成量”;完成量和开销有直接关系:带宽固定的情况下,开销越小,完成量越大;为了提高完成量,减少开销是最有效的手段;9完成量另外一个重要概念完成量:完成量的计算(单位时间的完成量=总完成量/观察时间): CompletionsX = - Observation period减少损耗意味着增加吞吐量以及增加完成量(completions)。提高完成率的核心思想提高完成量,降低和减少开销:采用更高效的协议;采用更高效的算法;减少可能产生其他开销的各

7、种因素;(例如,若希望减少开销为应用程序选用UDP协议,如果在网络丢包的情况下应用程序将会发起重传请求。比较复杂的应用程序可能会因此产生比使用TCP更多的开销。)10完成量对队列调优的影响针对完成量调优的目标:前提概念:到达率Arrival rate (A): rate at which work is requested (e.g., packets/s)到达的请求数量;观察周期Observation period: discrete time spent observing resources (e.g., 1 s)观察时间;稳定状态Steady state: condition in w

8、hich A=C稳定状态,即A=C的状态;最终的调优目标:到达率的平均值=完成量的平均值11定义合适的观察周期确定适当的观察周期:观察周期的设置应遵从原则:以1s作为观察期并收集观察数据,通过Littles法则来对比观察结果,观测到的值是否和计算值一致?若是则证明观测期设置是合理的,否则就需要调整观测期到更长时间。12队列调优的整体思想因此,队列调优的思想:Littles Law的变体:L=AW;L=A( Q + S );L=A( Q + ( St + Su ) );根据Littles Law所体现的调优思想:调整队列L:对队列的调整主要在于限制队列的长度到一定的值;对队列进行重新调整以适应读操作;尽可能低优化到达率A: 通过将负载分担到多个资源(SMP,RAID)以实现降低访问量; 采用更有效和更小开销的协

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论