linux 系统调优2
换作Linux:
2、增加连接数
3、磁盘分区的碎片整理
4、服务优化,把不要的服务关闭
5、更换性能更好的硬件,纵向升级
1、更换性能更好的硬件,纵向升级
2、系统配置优化
3、优化应用程序,修正不正确地方
4、负载均衡,把应有平分到多台机器上,横向升级
5、网络优化,使用速度更高的网卡
6、做Raid,LVM,提高硬盘的IO
7、涉及数据库的话,就要正确选择数据库系统。
1、内存
2、CPU运算能力
3、硬盘的IO
4、网络带宽
CPU vmstat,sar,top,ps,cat /proc/cpuinfo
内存 vmstat,sar,free,iostat
硬盘 vmstat,sar,df -h,iostat
网络 sar,ifconfig, cat /proc/net/dev
1、总体利用率
确定CPU的运算速度是否足够
2、平均负载
top,uptime
系统总体性能指标
3、独立进程的CPU损耗量
让您高清楚哪个进程造成CPU资源不够
us 用户进程占用的cpu时间百分比
sy 内核进程 init
id 空闲时间比
wa CPU等待外部设备的时间
us 特别高,一般就说明某个用户程序占用大量的CPU,top 。一般这些现象出现在cpu密集型的应用上。
wa 数值比较高,说明cpu大部时间用于等待外设。一般都是硬盘IO速度慢导致。
如果id数值高,wa数值非常高,但是系统很慢,那很可能就是硬盘造成瓶颈.
wa值持续高于6,不正常
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
r b swpd free buff cache si so bi bo in cs us sy id wa st
4 0 0 1436968 78036 268800 0 0 39 12 4067 2526 12 9 79 1 0
2 0 0 1436764 78036 269112 0 0 146 0 19433 11489 41 34 20 5 0
1 1 0 1436464 78052 269392 0 0 148 268 19175 11843 42 35 19 4 0
1 0 0 1436240 78052 269712 0 0 152 0 18761 11232 42 33 20 5 0
2 0 0 1435692 78052 270020 0 0 144 0 19024 11648 41 34 20 5 0
10:50:45 up 1:28, 5 users, load average: 1.10, 0.96, 0.90
如果数值持续高于3,所以系统正在繁忙运算,目前还算可以。
如果数值持续高于8,说明CPU严重不够用。
安装sysstat,要让状态数据采集服务生效,必须重启
sar 会在后台周期的采集数据,数据保存在/var/log/sa/* ,二进制格式,要查看就要使用sar
sar -f 指定要查看的日志文件
sar -f /var/log/sa/sa21
11时02分32秒 all 26.82 0.00 21.55 0.00 0.00 51.63
11时02分34秒 all 26.80 0.00 21.59 0.00 0.00 51.61
11时02分36秒 all 27.32 0.00 21.55 0.00 0.00 51.13
11时02分38秒 all 27.68 0.00 21.70 0.00 0.00 50.62
11时02分40秒 all 27.50 0.00 21.00 0.00 0.00 51.50
Average: all 27.22 0.00 21.48 0.00 0.00 51.30
Linux 2.6.18-128.el5 (dns.upl.com) 2010年08月23日
11时18分39秒 1 142 1.69 1.54 1.21
11时18分41秒 1 142 1.63 1.53 1.21
11时18分43秒 1 142 1.63 1.53 1.21
11时18分45秒 1 142 1.63 1.53 1.21
11时18分47秒 1 142 1.66 1.53 1.21
Average: 1 142 1.65 1.53 1.21
us数值过高
sy数值过高
cpu空闲时间持续接近0
长时间有运行队列
1、升级cpu
2、增加cpu个数
3、把应用均衡到多个设备,集群
total used free shared buffers cached
Mem: 1001 816 185 0 171 519
-/+ buffers/cache: 125 876
Swap: 4094 0 4094
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 116 190032 175784 531960 0 0 40 71 30 29 1 0 93 6 0
0 0 116 190032 175784 531960 0 0 0 0 1004 36 0 0 100 0 0
0 0 116 190032 175788 531956 0 0 0 14 1005 38 0 0 100 0 0
0 0 116 190032 175788 531960 0 0 0 0 1004 33 0 0 100 0 0
0 0 116 190032 175788 531960 0 0 0 0 1004 36 0 0 100 0 0
1) top 观看哪个进程占用资源最多
2)sar -u 2 30 观看cpu总体利用率
3)free -m 查看内存是否足够
Linux 2.6.18-128.el5 (squid.upl.com) 2010年08月23日
13时43分05秒 all 0.00 0.00 0.00 0.00 0.00 100.00
13时43分07秒 all 0.00 0.00 0.00 0.00 0.00 100.00
13时43分17秒 all 91.03 0.00 2.44 0.00 0.00 6.53
13时43分21秒 all 97.56 0.00 2.44 0.00 0.00 0.00
13时43分23秒 all 97.31 0.00 2.69 0.00 0.00 0.00
13时43分25秒 all 97.26 0.00 2.74 0.00 0.00 0.00
total used free shared buffers cached
Mem: 1001 581 419 0 85 341
-/+ buffers/cache: 154 847
Swap: 4094 0 4094
页“Page”,默认页大小 4kb. 页表--记录虚拟页和物理页映射关系。
1、free
total used free shared buffers cached
Mem: 1001 648 353 0 86 347
-/+ buffers/cache: 214 787
Swap: 4094 0 4094
page out: 0
系统有158个进程,其中一个处于运行状态,当前cpu正为进程id 1580进程服务
sar -B
Linux 2.6.18-128.el5 (squid.upl.com) 2010年08月23日
14时05分24秒 0.00 0.00 27.00 0.00
14时05分26秒 0.00 0.00 12.00 0.00
14时05分28秒 0.00 18.00 6.50 0.00
14时05分30秒 0.00 0.00 6.47 0.00
14时05分32秒 0.00 144.72 6.53 0.00
Average: 0.00 32.40 11.70 0.00
pgpgout/s 每秒中从内存调出到磁盘的页面数 ####
fault/s 每秒页故障数目
majflt/s 每秒的主要页面故障数目
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 112 455068 90852 363692 0 0 40 70 3 30 1 0 93 6 0
0 0 112 455068 90852 363692 0 0 0 0 1003 38 0 0 100 0 0
0 0 112 455068 90852 363692 0 0 0 0 1003 35 0 0 100 0 0
0 0 112 455068 90856 363688 0 0 0 14 1007 37 0 0 100 0 0
0 0 112 455068 90856 363692 0 0 0 0 1005 34 0 0 100 0 0
1)使用top命令 ,按 内存使用百分比 排序 。判断哪个进程占用内存最多,然后决定是否有需要结束它,后者暂停他
kill -STOP #PID
kill -START #PID
/dev/sda7 swap swap defaults,pri=1 0 0
swapon /dev/sda7
1)sar -B 2 20
2) top 《-- shift + m
3) sar -u 2 20
4)free -m
[root@squid www]# sar -B 2 30
Linux 2.6.18-128.el5 (squid.upl.com) 2010年08月23日
14时36分05秒 0.00 0.00 483.08 0.00
14时36分07秒 0.00 527.45 238.24 0.00
14时36分09秒 0.00 0.00 647.69 0.00
14时36分12秒 5041.60 166700.80 176096.40 31.60
14时36分36秒 119.27 2655.21 1359.17 3.00
14时36分38秒 2700.50 20352.24 14664.18 60.20
14时36分40秒 1285.57 29828.86 18180.10 41.29
14时36分42秒 1312.56 33736.68 13102.51 38.69
14时31分37秒 all 25.49 0.00 68.20 4.85 0.00 1.46
14时31分39秒 all 28.43 0.00 70.07 0.00 0.00 1.50
14时31分41秒 all 26.80 0.00 69.73 1.99 0.00 1.49
14时31分43秒 all 25.31 0.00 72.95 0.00 0.00 1.74
14时31分45秒 all 25.92 0.00 73.39 0.00 0.00 0.69
14时31分47秒 all 18.66 0.00 38.31 0.25 0.00 42.79
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 309.43 2034.07 9602.85 901297 4255022
sda1 0.33 5.51 0.03 2440 14
sda2 307.83 1974.26 9602.20 874794 4254736
Blk_read/s 每秒中该设备读取多少个数据块 1块=512字节
Blk_wrtn/s
Blk_read 一共从该设备读取了多少个数据块
w/2 平均每秒产生多少个写请求数目
avgqu-sz 平均每秒有多少个IO队列,数值越大,磁盘越忙
await 设备发出i/o请求+排队时间+处理该IO的时间,单位:毫秒 ##
svctm 设备服务时间(处理该IO的时间) ##
%util 设备的使用带宽百分比,数值越高,磁盘越忙 ##
sda 2.36 3.55 5.51 209.12 48.52 32.52
32.13 0.06 7.40 3.56 2.71
r/s w/s非常小,不算大,排除该原因
2)磁盘带宽利用百分比,很高。
%util 表明带宽利用率很小,排除该原因
3)该磁盘原本速度就慢。
# iostat -x -d | sort -k11,11rn 《--安服务时间倒序排列
sar -d 和iostat基本一样
看IO列
A) 分区优化
/dev/sda2 swap
/dev/sda3 /tmp
/dev/sda5 /var
/dev/sda6 /usr
/dev/sda7 /
如果原本存在备份策略的前提下,可以完全考虑使用raid 0
否则的话,建议raid5
磁盘建议使用scsi,考虑用SAN
涉及到分区格式
mkfs.ext3 -b <---指定块大小
总结:如果该文件系统存方的文件平均尺寸比较小,那么就可以采用默认的块大小(1KB),如果文件尺寸比较大,那么可以采用4KB或者8KB
# mkfs.ext3 -b 4096 /dev/sda5 《--定义块大小为4KB
LABEL=/vmware /vmware ext3 defaults,noatime 1 2
^
# echo "205141" > /proc/sys/fs/file-max
增加允许打开的最大文件个数
特点:直接使用内存保存数据,速度非常快;
如果关机,来不及做额外的保存工作的话,上面的数据肯定就丢失。
比较适合:经常读取该文件,而且修改请求比较少的小文件
tmpfs /tmpfs tmpfs defaults,size=64m 0 0
ext3,ext4,JFS,XFS,Reiserfs
Linux 2.6.18-128.el5 (squid.upl.com) 2010年12月09日
16时13分34秒 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
16时13分34秒 eth0 1.50 0.50 93.00 81.00 0.00 0.00 0.00
16时13分34秒 eth1 1.00 0.00 74.00 0.00 0.00 0.00 0.00
16时13分34秒 sit0 0.00 0.00 0.00 0.00 0.00 0.00 0.00
16时13分34秒 vmnet1 0.00 0.00 0.00 0.00 0.00 0.00 0.00
txbyt/s 发送
linux 系统调优2的更多相关文章
- Linux系统调优1
Linux在进行系统调优的时候,首先要考虑整个操作系统的结构,然后针对各个部分进行优化,下面展示一个Linux系统的各个组成部分: 有上图可以看出,我们可以调整的有应用程序,库文件,内核,驱动,还有硬 ...
- Linux系统调优——CPU(一)
(1).系统调优思路 性能优化就是找到系统处理中的瓶颈以及去除这些的过程,性能优化其实是对OS 各子系统达到一种平衡的定义.具体步骤如下: 1. 系统的运行状况: CPU -> MEM -& ...
- Linux系统调优相关工具
一.系统调优概述 系统的运行状况: CPU -> MEM -> DISK*-> NETWORK -> 应用程序调优 分析是否有瓶颈(依据当前应用需求) 调优(把错误的调正确) ...
- linux系统调优工具
系统调优思路 性能优化就是找到系统处理中的瓶颈以及去除这些的过程,性能优化其实是对 OS 各子系统达到一种平衡的定义.具体步骤如下: 1. 系统的运行状况: CPU -> MEM -> D ...
- Linux系统调优
Linux核心参数都是放置在/proc下面:系统的参数都是放置在/proc/sys swap最好放置在运行最快的硬盘上面,但是swap并能取代ram,因为并有I/O上面的损耗,所以优先考虑检验内存没有 ...
- Linux系统调优——内核相关参数(五)
修改内核参数有3种办法:一种临时修改,两种永久修改. 临时修改是使用sysctl [选项] [参数名=值]命令:永久修改是修改/etc/sysctl.conf文件或修改/proc/sys/目录下的对应 ...
- Linux系统调优——网络(四)
(1).查看网络(Network)运行状态相关工具 1)nload监控总体带宽使用情况 nload需要自己安装,而且在安装前需要安装epel-release [root@youxi1 ~]# yum ...
- Linux系统调优——磁盘I/O(三)
(1).查看I/O运行状态相关工具 1)查看文件系统块大小 对于ext4文件系统,查看文件系统块大小 [root@CentOS6 ~]# tune2fs -l /dev/sda1 | grep siz ...
- 1.linux系统调优
首先来说调优是一门黑色艺术,使用来满足人的感知,通过人的感觉来进行配置,达到让人感觉操作系统速度很块的感觉. 操作系统拥有四个瓶颈:cpu,内存,网络,磁盘.调优主要是对上述四个子系统进行配置优化,其 ...
- Linux系统调优及安全设置
1.关闭SELinux #临时关闭 setenforce 0 #永久关闭 vim /etc/selinux/config SELINUX=disabled 2.设定运行级别为3 #设定运行级别 vim ...
随机推荐
- Android源码学习之装饰模式应用
首先得了解最基础的装饰器模式 参考 设计模式之八 --- 装饰模式(Decorator) 参考链接:http://blog.csdn.net/cjjky/article/details/7478788 ...
- [原博客] POJ 1740 A New Stone Game
题目链接题意:有n堆石子,两人轮流操作,每次每个人可以从一堆中拿走若干个扔掉(必须),并且可以从中拿走一些分到别的有石子的堆里(可选),当一个人不能拿时这个人输.给定状态,问是否先手必胜. 我们参考普 ...
- 开源网站管理工具—Altman
0×00前言 之前用过几款webshell工具,有B/C的也有C/S的,有的只能用于php或者aspx,当然个人用得最多.觉得用得舒服的也只有菜刀了. 但是毕竟菜刀是好几年之前的产物了,而且也已经停止 ...
- 不重复查询mysql
select EquipmentSID,MIN(MatureTime),MIN(ISlock) from table group by name String sql =” Select * from ...
- Leetcode解题思想总结篇:双指针
Leetcode解题思想总结篇:双指针 1概念 双指针:快慢指针. 快指针在每一步走的步长要比慢指针一步走的步长要多.快指针通常的步速是慢指针的2倍. 在循环中的指针移动通常为: faster = f ...
- ajax 初始化请求前携带参数
$(function () { function SetAjax(wxOpenId, departCode) { $.ajaxSetup({ xhrF ...
- SQL Server 2008 R2 制作数据库结构和数据脚本
数据库中包含众多表和数据,有时候需要创建脚本将表结构和数据一起导出 具体方法如下: 1.右键选择数据库,选择“任务”--->“生成脚本” 2.根据需求,选择制作脚本的对象,一般情况选择“表” 3 ...
- BZOJ_3224_普通平衡树_(Treap)
描述 http://www.lydsy.com/JudgeOnline/problem.php?id=3224 Treap模板题.支持如下几种操作: 1.插入; 2.删除; 3.rank(x); 4. ...
- 基于mongoDB的capped collection的性能优化
MonitorLogging改造(消息接入) 改造前架构: 可以看出原来的流程中,大量业务分析,业务接入耦合在web服务层.大量操作,导致线程线性的挂起线程. 改造后: 将业务通讯抽象成为Monito ...
- 《华油能源OA系统数据同步和扩展的设计与实现_张宇峰》阅读笔记
为什么我会找到这篇论文? 华油能源集团拥有多套信息化软件系统,每个用户需要登录操作多个软件系统,记住多个系统的用户名.密码,需要不停的切换到每个系统,查看是否有需要进行的工作:管理员更是疲于每天对各个 ...