Warning: session_start(): open(/tmp/sess_ms9l8dd47t179n6t5m32e5uoh2, O_RDWR) failed: Disk quota exceeded (122) in /home/tensungn/public_html/www.tzlink.com/info/show.php on line 8

Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /home/tensungn/public_html/www.tzlink.com/info/show.php:8) in /home/tensungn/public_html/www.tzlink.com/info/show.php on line 8

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/tensungn/public_html/www.tzlink.com/info/show.php:8) in /home/tensungn/public_html/www.tzlink.com/info/show.php on line 8
Linux性能调优--虚拟内存 - Linux系统管理 - 站长之家

热烈祝贺台州维博网络的站长论坛隆重上线!(2012-05-28)    热烈庆祝伟大的祖国60周年生日 点击进来我们一起为她祝福吧(2009-09-26)    站长论坛禁止发布广告,一经发现立即删除。谢谢各位合作!.(2009-08-08)    热烈祝贺台州网址导航全面升级,全新版本上线!希望各位一如既往地支持台州网址导航的发展.(2009-03-28)    台州站长论坛恭祝各位新年快乐,牛年行大运!(2009-01-24)    台州Link正式更名为台州网址导航,专业做以台州网址为主的网址导航!(2008-05-23)    热烈祝贺台州Link资讯改名为中国站长资讯!希望在以后日子里得到大家的大力支持和帮助!(2008-04-10)    热烈祝贺台州Link论坛改名为台州站长论坛!希望大家继续支持和鼓励!(2008-04-10)    台州站长论坛原[社会琐碎]版块更名为[生活百科]版块!(2007-09-05)    特此通知:新台州站长论坛的数据信息全部升级成功!">特此通知:新台州站长论坛的数据信息全部升级成功!(2007-09-01)    台州站长论坛对未通过验证的会员进行合理的清除,请您谅解(2007-08-30)    台州网址导航|上网导航诚邀世界各地的网站友情链接和友谊联盟,共同引领网站导航、前进!(2007-08-30)    禁止发广告之类的帖,已发现立即删除!(2007-08-30)    希望各位上传与下载有用资源和最新信息(2007-08-30)    热烈祝贺台州站长论坛全面升级成功,全新上线!(2007-08-30)    
便民网址导航,轻松网上冲浪。
台州维博网络专业开发网站门户平台系统
您当前的位置: 首页 » Linux系统管理 » Linux性能调优--虚拟内存

Linux性能调优--虚拟内存

论坛链接
  • Linux性能调优--虚拟内存
  • 发布时间:2010-05-21 14:22:33    浏览数:5919    发布者:sunhw0725    设置字体【   
简单地说,虚拟内存就是硬盘中的一块区域,它用来存放内存里使用频率不高的页面文件。好处是为了提高内存的利用率 - 让使用频率高的页面文件活动在内存区域中,提高CPU对数据操作的速度。在Linux中,这个区域叫做swap,一般大小应设置为物理内存的2倍。

  vm.swappiness是Linux内核的一个参数,范围是0~100。它表示实际内存和虚拟内存区域进行数据交换的倾向性大小,数值越大表示倾向性越大,即交换的页面文件越多,反之亦然。一般默认值为60。可用'cat /proc/sys/vm/swappiness’查看。

  这个值应该设置成多大才能提高Linux的性能呢?这个当然要由具体的环境来定了。我在一台CentOS机器上,分别把值设为0,60,100,下面是运行'vmstat -S M 5’的三次数据报告。(vmstat命令是用来查看虚拟内存状况的,参数-S M表示以M为单位,5表示每5秒钟产生一次报告。)这里主要关注bi,bo和wa这三个值,bi代表每秒钟从硬盘读入数据的块数(因为硬盘是块设备),bo表示每秒钟写入硬盘数据的块数,wa表示CPU等待IO设备就绪的时间。

  当值为0时:

  procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------

  r b swpd free buff cache si so bi bo in cs us sy id wa st

  0 2 0 1277 16 6340 0 0 7 3 1 1 0 2 91 6 0

  2 0 0 1277 16 6340 0 0 9 778 1203 3901 0 5 78 17 0

  0 1 0 1276 16 6340 0 0 4 510 1094 3855 0 1 96 2 0

  0 0 0 1276 16 6340 0 0 13 294 1113 3896 0 3 89 7 0

  2 0 0 1276 16 6340 0 0 12 462 1122 3954 0 2 96 2 0

  0 0 0 1276 16 6340 0 0 8 6 1027 3915 0 1 98 0 0

  0 2 0 1276 16 6340 0 0 19 982 1178 3894 0 2 79 19 0

  0 0 0 1276 16 6340 0 0 10 666 1195 3904 0 3 70 27 0

  0 0 0 1276 16 6340 0 0 7 10 1031 3955 0 2 98 0 0

  0 0 0 1276 16 6340 0 0 15 9 1031 3902 0 5 95 0 0

  2 2 0 1275 16 6341 0 0 7 1420 1275 3930 0 2 67 32 0

  0 0 0 1275 16 6341 0 0 6 290 1125 3939 0 1 89 10 0

  0 0 0 1275 16 6341 0 0 11 18 1029 3975 0 2 98 0 0

  0 0 0 1275 16 6341 0 0 26 22 1037 3984 0 1 98 1 0

  0 0 0 1275 16 6341 0 0 5 18 1027 3892 0 2 97 0 0

  0 0 0 1275 16 6341 0 0 6 10 1029 3878 0 1 98 0 0

  0 2 0 1275 16 6341 0 0 6 1106 1191 3935 0 1 81 18 0

  1 2 0 1275 16 6341 0 0 18 1121 1245 3870 0 1 61 38 0

  0 0 0 1275 16 6341 0 0 14 121 1086 3924 0 2 94 4 0

  0 2 0 1274 16 6341 0 0 12 1264 1245 3925 0 1 73 25 0

  1 0 0 1274 16 6342 0 0 8 777 1208 3897 0 4 74 22 0

  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 0 1274 16 6342 0 0 8 267 1076 3870 0 5 95 0 0

  0 0 0 1274 16 6342 0 0 6 391 1089 3856 0 2 98 0 0

  0 0 0 1274 16 6342 0 0 10 0 1033 3893 0 1 98 0 0

  2 0 0 1274 16 6342 0 0 5 0 1026 3904 0 2 98 0 0

  0 2 0 1274 16 6342 0 0 5 1016 1193 3907 0 2 82 16 0

  0 0 0 1274 16 6342 0 0 4 203 1092 3895 0 3 90 7 0

  1 3 0 1274 16 6342 0 0 6 1198 1243 3910 0 2 75 23 0

  2 0 0 1274 16 6342 0 0 4 81 1062 3974 0 1 95 3 0

  1 0 0 1274 16 6342 0 0 14 13 1029 3907 0 1 98 0 0

  0 2 0 1274 16 6342 0 0 11 1231 1228 3960 0 4 71 24 0

  0 0 0 1274 16 6342 0 0 10 222 1102 3971 0 2 84 13 0

  0 0 0 1273 16 6343 0 0 6 0 1032 3954 0 2 98 0 0

  0 3 0 1273 16 6343 0 0 6 1411 1314 4007 0 3 69 28 0

  0 0 0 1272 16 6343 0 0 14 386 1157 4162 0 2 91 7 0

  1 0 0 1272 16 6343 0 0 14 810 1170 3921 0 1 89 10 0

  2 0 0 1272 16 6343 0 0 5 566 1137 3884 0 1 92 6 0

  0 0 0 1272 16 6343 0 0 10 265 1073 3938 0 2 98 0 0

  0 0 0 1272 16 6343 0 0 54 802 1196 4131 0 7 83 9 0

  0 0 0 1272 16 6344 0 0 7 7 1046 3939 0 2 98 0 0

  0 0 0 1272 16 6344 0 0 4 943 1206 3840 0 1 86 12 0

  2 0 0 1272 16 6344 0 0 9 38 1033 3891 0 1 99 0 0
      当值为60时:

  procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------

  r b swpd free buff cache si so bi bo in cs us sy id wa st

  0 1 0 1268 17 6347 0 0 7 3 1 1 0 2 91 6 0

  0 0 0 1267 17 6347 0 0 7 526 1163 3875 0 2 92 5 0

  0 0 0 1267 17 6347 0 0 8 4 1025 3934 0 1 98 0 0

  2 0 0 1267 17 6347 0 0 6 17 1032 3917 0 1 98 0 0

  0 0 0 1267 17 6348 0 0 9 34 1036 3909 0 2 98 0 0

  1 0 0 1267 17 6348 0 0 9 16 1033 3990 0 1 98 0 0

  0 1 0 1267 17 6348 0 0 6 1172 1195 3936 0 3 83 14 0

  0 0 0 1266 17 6348 0 0 12 958 1252 3988 0 3 64 33 0

  1 0 0 1266 17 6348 0 0 32 372 1096 3875 0 1 97 2 0

  0 0 0 1266 17 6348 0 0 7 4 1034 3838 0 1 98 0 0

  0 0 0 1266 17 6348 0 0 13 18 1030 3925 0 2 98 0 0

  0 1 0 1266 17 6348 0 0 4 1100 1200 3862 0 2 83 15 0

  0 0 0 1266 17 6348 0 0 4 350 1139 3921 0 2 88 10 0

  0 0 0 1266 17 6348 0 0 6 0 1028 3814 0 2 97 0 0

  1 0 0 1266 17 6349 0 0 10 769 1179 3886 0 2 83 15 0

  0 0 0 1266 17 6349 0 0 7 411 1100 4004 0 1 96 3 0

  0 1 0 1266 17 6349 0 0 10 578 1118 3915 0 2 94 5 0

  0 0 0 1266 17 6349 0 0 26 85 1077 3865 0 1 92 7 0

  0 0 0 1266 17 6349 0 0 6 18 1029 3879 0 1 98 0 0

  0 2 0 1265 17 6349 0 0 10 658 1116 3963 0 1 92 6 0

  0 0 0 1265 17 6349 0 0 10 798 1212 3901 0 3 71 27 0

  procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------

  r b swpd free buff cache si so bi bo in cs us sy id wa st

  1 0 0 1265 17 6349 0 0 10 245 1077 3900 0 1 98 1 0

  0 0 0 1264 17 6350 0 0 37 13 1044 3925 0 2 97 1 0

  0 0 0 1264 17 6350 0 0 6 848 1187 3892 0 2 83 15 0

  0 3 0 1264 17 6350 0 0 6 577 1119 3920 0 1 93 5 0

  1 0 0 1264 17 6350 0 0 4 84 1062 3890 0 1 96 2 0

  0 0 0 1264 17 6350 0 0 10 18 1034 3824 0 2 97 0 0

  0 0 0 1264 17 6350 0 0 6 0 1025 3931 0 1 98 0 0

  0 1 0 1264 17 6350 0 0 10 621 1110 3891 0 2 94 4 0

  1 0 0 1264 17 6350 0 0 8 466 1144 3855 0 2 77 21 0

  0 0 0 1264 17 6350 0 0 8 8 1031 3916 0 1 98 0 0

  1 0 0 1264 17 6350 0 0 8 12 1028 3914 0 1 98 0 0

  1 2 0 1263 17 6351 0 0 10 929 1182 3962 0 3 85 12 0

  2 1 0 1263 17 6351 0 0 10 1089 1275 3988 0 2 58 40 0

  0 0 0 1263 17 6351 0 0 11 358 1142 3954 0 2 88 10 0

  2 0 0 1263 17 6351 0 0 6 0 1026 3853 0 1 99 0 0

  0 0 0 1263 17 6351 0 0 6 0 1029 3990 0 1 98 0 0

  1 0 0 1263 17 6351 0 0 6 11 1029 3856 0 1 98 0 0

  2 1 0 1263 17 6351 0 0 7 1276 1204 3885 0 3 80 18 0

  1 0 0 1263 17 6351 0 0 14 514 1156 3849 0 2 77 21 0

  0 1 0 1251 17 6353 0 0 393 736 1234 4059 2 2 85 11 0

  当值为100时:

  procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------

  r b swpd free buff cache si so bi bo in cs us sy id wa st

  0 6 0 1202 18 6411 0 0 7 3 1 0 0 2 91 6 0

  0 6 0 1201 18 6411 0 0 66 1153 1189 3604 0 3 45 53 0

  1 3 0 1200 18 6412 0 0 189 930 1226 8164 1 8 49 41 0

  0 6 0 1200 18 6412 0 0 44 1134 1261 3937 0 2 53 45 0

  0 4 0 1200 18 6413 0 0 98 1118 1229 3868 0 2 46 52 0

  2 3 0 1200 18 6413 0 0 45 1245 1251 3798 0 2 49 49 0

  1 4 0 1199 18 6413 0 0 74 922 1218 3853 0 2 53 45 0

  1 5 0 1198 18 6415 0 0 194 1084 1225 4919 0 4 51 44 0

  0 3 0 1198 18 6415 0 0 52 930 1192 3577 0 3 51 45 0

  1 0 0 1197 18 6416 0 0 147 831 1222 3995 0 13 51 36 0

  1 1 0 1197 18 6416 0 0 48 3240 1256 4557 1 5 46 48 0

  0 2 0 1196 18 6417 0 0 38 3730 1267 4536 0 5 53 42 0

  1 2 0 1195 18 6417 0 0 42 3336 1238 4048 0 3 51 45 0

  1 4 0 1195 18 6418 0 0 50 2759 1207 4237 1 5 52 42 0

  0 7 0 1195 18 6418 0 0 48 2201 1229 4138 0 4 41 54 0

  2 3 0 1194 19 6420 0 0 28 2360 1241 3913 0 2 53 44 0

  0 4 0 1193 19 6420 0 0 63 3812 1209 4344 1 5 46 48 0

  0 4 0 1193 19 6421 0 0 120 3942 1199 4452 1 5 43 52 0

  0 3 0 1192 19 6421 0 0 38 2963 1231 4272 0 4 45 51 0

  0 4 0 1191 19 6421 0 0 37 2784 1202 4373 1 5 49 46 0

  1 4 0 1191 19 6421 0 0 24 2558 1242 3909 0 2 54 43 0

  procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------

  r b swpd free buff cache si so bi bo in cs us sy id wa st

  0 5 0 1191 19 6422 0 0 36 1774 1212 4009 0 4 47 50 0

  0 2 0 1191 19 6422 0 0 29 4292 1208 4479 0 4 48 47 0

  0 4 0 1191 19 6422 0 0 44 3392 1204 4705 1 5 45 49 0

  1 2 0 1190 19 6423 0 0 56 3950 1250 4541 1 5 55 40 0

  0 2 0 1190 19 6423 0 0 67 877 1198 3515 0 2 54 44 0

  1 2 0 1189 19 6423 0 0 67 928 1201 3589 0 1 57 41 0

  1 3 0 1189 19 6424 0 0 69 1488 1190 3569 0 2 50 49 0

  0 3 0 1189 19 6424 0 0 61 2230 1228 3828 0 2 53 44 0

  1 6 0 1189 19 6424 0 0 30 2662 1275 4186 0 3 38 58 0

  3 2 0 1190 19 6424 0 0 22 1932 1274 4297 0 26 32 42 0

  0 4 0 1190 19 6425 0 0 56 1692 1289 4160 0 10 46 44 0

  1 0 0 1188 19 6427 0 0 412 795 1216 4795 0 13 56 31 0

  0 2 0 1188 19 6427 0 0 127 1854 1298 4400 0 13 52 35 0

  0 5 0 1187 19 6428 0 0 34 6174 1250 4808 0 11 45 44 0

  0 3 0 1187 19 6428 0 0 110 1285 1218 3507 0 1 52 46 0

  0 1 0 1185 19 6430 0 0 306 938 1215 3890 0 2 59 40 0

  1 3 0 1185 19 6431 0 0 52 3722 1207 4013 0 2 57 41 0

  0 4 0 1185 19 6431 0 0 17 9450 1205 5760 1 9 41 50 0

  1 2 0 1184 19 6431 0 0 16 7072 1188 4330 0 4 55 41 0

  2 4 0 1184 19 6431 0 0 20 7046 1241 5521 1 8 48 44 0

  1 3 0 1183 19 6432 0 0 46 7037 1190 4488 0 8 37 54 0

  发现什么了吗?很明显当值为100时,wa基本为50左右的值,这表示50%的CPU时间都在等待IO设备就绪(大好的CPU资源就这样被浪费了!)现在你明白瓶颈在哪里了吧?对,就是硬盘。说明我实验的这台机器硬盘IO的处理能力是最影响性能的了。那么该怎么解决呢?当然了,换个转速更快的硬盘当然可以,还有呢?增加内存有可能也可以。增加了内存以后,再把swappiness的值设小点,以减少硬盘IO的操作。内存够大时,无论页面文件的使用频率是高还是低都放在内存里,无须使用虚拟内存。

  但是在这个例子中,swpd的值始终为0,这表示没有虚拟文件被使用。这说明内存容量是足够的,即使再增加内存,作用也不大。最好的办法就是更换硬盘了。

  如何改变swapiness的值?你可以运行'echo 数值 > /proc/sys/vm/swapiness’ 或者 'sysctl –w vm.swappiness = 数值' 来修改内核中的实时参数。如果想机器在重启之后仍然保持这个数值的话,就需要在'/etc/sysctl.conf’文件中加上'vm.swappiness = 数值' 这一行。
娱乐休闲专区A 影视预告B 音乐咖啡C 英语阶梯D 生活百科
网页编程专区E AMPZF HTMLG CSSH JSI ASPJ PHPK JSPL MySQLM AJAX
Linux技术区 N 系统管理O 服务器架设P 网络/硬件Q 编程序开发R 内核/嵌入
管理中心专区S 发布网址T 版主议事U 事务处理

Warning: Unknown: open(/tmp/sess_ms9l8dd47t179n6t5m32e5uoh2, O_RDWR) failed: Disk quota exceeded (122) in Unknown on line 0

Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/tmp) in Unknown on line 0