服务器数据维护与基础常识服务器版本的内核时钟频率由桌面的100hz转为1khz,这一点是为某些服务器应用提供更好的性能和吞吐量。
除此之外,服务器内核支持SMP‖对称多处理‖(Symmetrical Multi-Processing)技术和NUMA。
集成的LAMP也是Ubuntu Server的一大特色,省去了很多配置的麻烦。
支持―big iron‖(大型服务器):那是一种能够让软件运行得更容易和更简单的硬件解决方案。
LTS支持:长期服务、质量保证、本地化、认证。
Ubuntu server使用了最新的稳定内核,比debian、centos都要新很多,包括一系列gnu软件都很新,比如gcc。
性能较centos最新的centos6都要好。
特别推荐ubuntu server12.4LTS作为生产系统使用。
除去以上的特征,你可以把Ubuntu Server看作是Desktop版本去掉GUI的产物。
====================================desktop是livecd+图形安装cd(可以直接从光盘读取进入系统然后在图形界面下安装)server是服务器版(只装用命令行模式,没有图形部分,一般用户估计没怎么人用)alternate是文本安装模式(安装过程用点中只能键盘操作,安装界面和windows前半段的类似)desktop和alternate安装完之后都带图形界面,一般用户用的,server是做服务器用的。
linux系统如何查看系统性能作者: SK 日期: 2012 年11 月06 日评论关闭一般我们查看系统性能主要是在以下几个方面1.用户使用CPU情况展现为%user2.系统使用CPU情况展现为%sys3.wio或iowait 展现为%iowait 进程由于等待磁盘IO而使CPU处于空闲状态的比率4.CPU的空闲率5.CPU上下文的交换的比率,也有说明为CPU上下文的切换。
即内存和寄存器中数据的切换6.nice 这个还不是很明白是啥意思7.real-time 还是未知8.运行队列的长度9.平均负载一般我们查看系统性能主要是在以下几个方面1.用户使用CPU情况展现为%user2.系统使用CPU情况展现为%sys3.wio或iowait 展现为%iowait 进程由于等待磁盘IO而使CPU处于空闲状态的比率4.CPU的空闲率5.CPU上下文的交换的比率,也有说明为CPU上下文的切换。
即内存和寄存器中数据的切换6.nice 这个还不是很明白是啥意思7.real-time 还是未知8.运行队列的长度9.平均负载二常用命令1.mpstat2.top3.vmstat4.sar5.iostat6.uptime三命令详解1. mpstat -P ALL 5 //需要注意的P和ALL一定要大写17时22分24秒CPU %user %nice %sys %iowait %irq %soft %steal %idle intr/s17时22分29秒all 0.30 0.00 0.10 0.67 0.02 0.07 0.00 98.83 821.40 17时22分29秒0 1.00 0.00 0.60 1.00 0.20 0.60 0.00 96.60 560.00 17时22分29秒 1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.20 0.00 17时22分29秒 2 0.60 0.00 0.20 0.20 0.00 0.20 0.00 99.00 250.20 17时22分29秒 3 0.00 0.00 0.00 4.00 0.00 0.00 0.00 96.00 11.20 17时22分29秒 4 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.20 0.00 17时22分29秒 5 0.80 0.00 0.00 0.00 0.00 0.00 0.00 99.20 0.00 17时22分29秒 6 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 0.00 17时22分29秒7 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 0.00上面信息我们可以看出,有8个CPU。
%user :在internal时间段里,即为用户态的CPU时间,及登录用户所消耗的CPU时间比。
%sys :在internal时间段里,负进程消耗的CPU时间,占所有CPU的百分比%nice :优先进程占用时间%iowait:在internal时间段里,所有未等待磁盘IO操作进程占CPU的百分比%irq :这个还是未知total*100δsoftirq/δ%soft :在internal时间段里,软中断时间(%)%idle :在internal时间段里,CPU除去等待磁盘IO操作外的因为任何原因而空闲的时间闲置时间(%)intr/s:在internal时间段里,每秒CPU接收的中断的次数3.vmstatprocs ———–memory———- —swap–—–io—- -system–—–cpu——r b swpd free buff cache si so bi bo in cs us sy id wa st1 1 1385712 66752 112164 142999234 14 50 14 2 10 2 88 1 01 0 1385712 64540 112208 1430976 0 03 104 2599 6595 15 2 81 3 00 0 1385712 62084 112232 1433008 0 0 1 1276 2068 7772 18 1 77 4 00 0 1385712 60808 112232 1434036 0 0 1 29 730 3686 9 1 90 1 0参数详解:r:当前系统中等待CPU的进程数(所有的CPU),若是改值连续都大于CPU的个数,表明有多数进程在等待CPU进行处理。
若是该值大于CPU个数4倍的话,那么表明该服务器缺少CPU,或者CPU的处理速度过慢in :cpu每秒产生的中断数cs :每秒产生的上下文切换us:用户占用的CPU时间百分比,同mpstat 的%user,说明用户进程消耗的CPU时间多,但是如果长期超50%的使用,那么我们就该考虑优化程序算法或者进行加速(比如PHP/PERL)sy:系统占用的CPU时间百分比,同mpstat 的%sys。
内核进程消耗的CPU时间百分比(sy的值高时,说明系统内核消耗的CPU资源多,这并不是良性表现,我们应该检查原因)id:CPU处于空闲状态时间百分比,如果空闲时间(cpu id)持续为0并且系统时间(cpu sy)是用户时间的两倍(cpu us) 系统则面临着CPU资源的短缺.wa:IO等待消耗的CPU时间百分比,wa的值高时,说明IO等待比较严重,这可能由于磁盘大量作随机访问造成,也有可能磁盘出现瓶颈(块操作)。
us+sy+id = 100%常见用法:vmstat -n 3 //每三秒获取一次数据vmstat 4 5 //间隔4次输出5次数据概念详解:上下文切换:CPU的切换就是将轮到该时间片的进程,将该进程中的数据从内容中刷到CPU的寄存器中,同时将原寄存器中的数据刷到内存中保存。
4.sarsar [options] [-A] [-o file] t [n]t 和n两个参数指定了采样间隔和采样次数- o 较日志记录到某个文件中sar 5 6 //每5秒采用一次,共采样6次。
Linux 2.6.18-53.el5PAE (localhost.localdomain) 03/28/200907:40:17 PM CPU %user %nice %system %iowait %steal %idle07:40:19 PM all 12.44 0.00 6.97 1.74 0.00 78.8607:40:21 PM all 26.75 0.00 12.50 16.00 0.00 44.7507:40:23 PM all 16.96 0.00 7.98 0.00 0.00 75.06参数详解:大部分的参数同mpstat top等命令。
%idle :等同于vmstat 中的id .就是空闲CPU百分比.如果该值高,表明CPU较空闲,但是处理速度还是很慢,则表明CPU在等待内存分配,应该加大服务器的内存。
若是该值持续低于10%,表明CPU处理能力较弱,需要增加CPU。
%steal:管理程序维护另一个虚拟处理器时,虚拟CPU的无意识等待时间百分比。
5.iostat 主要是为了查看磁盘IOLinux 2.6.16.46-0.12-smp (iread-85) 03/29/2010avg-cpu: %user %nice %system %iowait %steal %idle9.47 0.00 1.59 1.27 0.00 86.67Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtnsda 15.46 114.45 401.22 44378459 155576936参数详解:avg-cpu中参数不做过多解释,详细可见其他命令,类似。
rrqm/s: 每秒进行merge 的读操作数目。
即delta(rmerge)/swrqm/s: 每秒进行merge 的写操作数目。
即delta(wmerge)/sr/s: 每秒完成的读I/O 设备次数。
即delta(rio)/sw/s: 每秒完成的写I/O 设备次数。
即delta(wio)/srsec/s: 每秒读扇区数。
即delta(rsect)/swsec/s: 每秒写扇区数。
即delta(wsect)/srkB/s: 每秒读K字节数。
是rsect/s 的一半,因为每扇区大小为512字节。
(需要计算)wkB/s: 每秒写K字节数。
是wsect/s 的一半。
(需要计算)avgrq-sz:平均每次设备I/O操作的数据大小(扇区)。
delta(rsect+wsect)/delta(rio+wio)avgqu-sz:平均I/O队列长度。
即delta(aveq)/s/1000 (因为aveq的单位为毫秒)。
await: 平均每次设备I/O操作的等待时间(毫秒)。
即delta(ruse+wuse)/delta(rio+wio) svctm: 平均每次设备I/O操作的服务时间(毫秒)。
即delta(use)/delta(rio+wio)%util: 一秒中有百分之多少的时间用于I/O 操作,或者说一秒中有多少时间I/O 队列是非空的。