快速业务通道

linux 系统性能

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-04-05

上次简单介绍了下,linuxcpu,memory,disk i/o; net i/o 性能监控的一些工具;这节就介绍下,这些层面上出现瓶颈时,怎样调节内核,有那些内核参数可以调节来获得性能的提升; 下节介绍下:怎么识别性能瓶颈,当然只是空想了,怎样识别需要具体问题具体对待了;
希望对这些参数的介绍使大家对于linux的内核有一定的认识;

第一节:cpu 性能瓶颈

计算机中,cpu是最重要的一个子系统,负责所有计算任务;基于摩尔定律的发展,cpu是发展最快的一个硬件,瓶颈很少出现在cpu上;我们线上环境的cpu都是多核的,并且基于SMP(symmetric multiprocessing)结构的.通过观察线上机器cpu使用率会发现,使用率很低很低,不到5% 说明我们的资源浪费情况多么严重啊;(但为什么不能一台机器多部署几个应用呢,后边我会解释); 我们线上的cpu一个核支持超级线程,也就是一个核上可以并行运行几个线程)

1. 通过调整进程优先级调整: nice 命令来调整进程优先级别;可调范围(-20 19 如: renice 5 pid

2.通过调整cpu的亲和度来集中处理某一个中断类型:将系统发出的中断都绑定在一个cpu上,这样其他cpu继续执行自己正在执行的线程,不被中断打扰,从而较少了线程上下文切换时间,增强性能;

注: cpu亲和度的概念: 在多核cpu中,linux操作系统抢占式调度系统,按照cpu时间片/中断/ 不断调度进程给cpu去执行的;如果在一个时间片调度线程1cpu1上运行,另外一个时间片调度线程1cpu2上去运行,这样会造成线程执行速度慢,性能降低.为什么呢? 我们知道SMP上多核都是共享L1 ,L2 CPU Cache的.并且各个核的内存空间都是不可共享的,一个线程如果多次时间片上在不同的cpu上运行,会造成cache的不断失效和写入;性能会降低; linux的进程调度有个亲和度算法可以将尽量将进程每次都调度到同一个cpu上处理;linux调度时当然也有Loadbalance算法保证进程调度的均匀负载的;

例如: echo 03 > /proc/irq/19/smp-affinity (将中断类型为19的中断绑定到第三个cpu上处理)

第二节:内存性能瓶颈

,linux的内存管理是聪明和智能的;linux通过(virtual memory manage)来管理内存的; 对于大多数应用,linux是不直接写到硬盘上去的,而是先写到 virtual memory manage 管理的文件系统缓存(也在内存中的) .方便应用的后续的读请求;和磁盘的I/O操作是昂贵的;linux会根据一些算法策略适当的时候同步到硬盘的;这就是为什么我们运行linux一段时间后,发现可用内存那么少的原因,多数被cache buffer占用咧;

我们提高性能的办法就是减少写到磁盘的次数,提高每次写磁盘时的效率质量;

1. 通过调节缓存的脏数据同步到硬盘的策略:(脏数据表示没有被当前的线程使用的数据)

例如: echo 10 > /proc/sys/vm/dirty_background_rato (当脏数据占据物理内存10%时,触发pdflush同步到硬盘):小心调节,会大幅度的影响性能;

echo 2000 > /proc/sys/vm/dirty_expire_centisecs (当脏数据在物理内存的逗留时间超过2000ms时被同步到硬盘);

2.通过调节swap参数,来优化linux虚拟内存管理:基于程序的局部性原理,linux通过虚拟内存机制来实现并发运行进程,linux发现物理内存不够用时,会根据LRU算法将一部分内存swap out到硬盘;当运行被换出的那个线程时,在swap in 到内存里;

例如: echo 10 > /proc/sys/vm/swappiness(值为0表示尽量都用物理内存,值为100表示积极的使用swap分区;)这个参数很重要;小心调节; 一般为60;

第三节: 磁盘I/O可调性能参数

linux的子系统VFS(virtural file system)虚拟文件系统;从高层将各种文件系统,以及底层磁盘特性隐藏,对程序员提供:read,write,delete等文件操作;这就是之我们可以在linuxmount多种不同格式的文件系统的,而window确不行; 当然基于:虚拟文件系统,文件系统,文件系统驱动程序,硬件特性方面,都能找到性能瓶颈;

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号