ºìÁªLinuxÃÅ»§
Linux°ïÖú

Linux vmstatÃüÁîÏê½â

·¢²¼Ê±¼ä:2014-07-12 10:35:28À´Ô´:ºìÁª×÷Õß:velcbo
vmstat ÃüÁîÊÇ×î³£¼ûµÄLinux/Unix¼à¿Ø¹¤¾ß£¬¿ÉÒÔÕ¹ÏÖ¸ø¶¨Ê±¼ä¼ä¸ôµÄ·þÎñÆ÷µÄ״ֵ̬£¬°üÀ¨·þÎñÆ÷µÄCPUʹÓÃÂÊ£¬MEMÄÚ´æÊ¹Óã¬VMSwapÐéÄâÄÚ´æ½»»»Çé¿ö£¬IO¶ÁдÇé¿ö¡£

Õâ¸öÃüÁîÊDz鿴Linux/Unix×îºÃµÄÃüÁһ¸öÊÇLinux/Unix¶¼Ö§³Ö£¬¶þÊÇÏà±Ètop£¬¿ÉÒÔ¿´µ½Õû¸ö»úÆ÷µÄCPU£¬Äڴ棬IOµÄʹÓÃÇé¿ö£¬¶ø²»Êǵ¥µ¥¿´µ½¸÷¸ö½ø³ÌµÄCPUʹÓÃÂʺÍÄÚ´æÊ¹ÓÃÂÊ(ʹÓó¡¾°²»Ò»Ñù)¡£

¹¤×÷Ô­Àí£º

ÔÚϵͳÖÐÔËÐеÄÿ¸ö½ø³Ì¶¼ÐèҪʹÓõ½Äڴ棬µ«²»ÊÇÿ¸ö½ø³Ì¶¼ÐèҪÿʱÿ¿ÌʹÓÃϵͳ·ÖÅäµÄÄÚ´æ¿Õ¼ä¡£µ±ÏµÍ³ÔËÐÐËùÐèÄڴ泬¹ýʵ¼ÊµÄÎïÀíÄڴ棬Äں˻áÊÍ·ÅijЩ½ø³ÌËùÕ¼Óõ«Î´Ê¹ÓõIJ¿·Ö»òËùÓÐÎïÀíÄڴ棬½«Õⲿ·Ö×ÊÁÏ´æ´¢ÔÚ´ÅÅÌÉÏÖ±µ½½ø³ÌÏÂÒ»´Îµ÷Ó㬲¢½«ÊͷųöµÄÄÚ´æÌṩ¸øÓÐÐèÒªµÄ½ø³ÌʹÓá£

ÔÚLinuxÄÚ´æ¹ÜÀíÖУ¬Ö÷ÒªÊÇͨ¹ý¡°µ÷Ò³Paging¡±ºÍ¡°½»»»Swapping¡±À´Íê³ÉÉÏÊöµÄÄÚ´æµ÷¶È¡£µ÷Ò³Ëã·¨Êǽ«ÄÚ´æÖÐ×î½ü²»³£Ê¹ÓõÄÒ³Ãæ»»µ½´ÅÅÌÉÏ£¬°Ñ»î¶¯Ò³Ãæ±£ÁôÔÚÄÚ´æÖй©½ø³ÌʹÓ᣽»»»¼¼ÊõÊǽ«Õû¸ö½ø³Ì£¬¶ø²»ÊDz¿·ÖÒ³Ãæ£¬È«²¿½»»»µ½´ÅÅÌÉÏ¡£

·ÖÒ³(Page)дÈë´ÅÅ̵Ĺý³Ì±»³Æ×÷Page-Out£¬·ÖÒ³(Page)´Ó´ÅÅÌÖØÐ»ص½ÄÚ´æµÄ¹ý³Ì±»³Æ×÷Page-In¡£µ±ÄÚºËÐèÒªÒ»¸ö·Öҳʱ£¬µ«·¢ÏÖ´Ë·ÖÒ³²»ÔÚÎïÀíÄÚ´æÖÐ(ÒòΪÒѾ­±»Page-OutÁË)£¬´Ëʱ¾Í·¢ÉúÁË·ÖÒ³´íÎó£¨Page Fault£©¡£

µ±ÏµÍ³Äں˷¢ÏÖ¿ÉÔËÐÐÄÚ´æ±äÉÙʱ£¬¾Í»áͨ¹ýPage-OutÀ´ÊÍ·ÅÒ»²¿·ÖÎïÀíÄÚ´æ¡£¾¡¹ÜPage-Out²»ÊǾ­³£·¢Éú£¬µ«ÊÇÈç¹ûPage-outƵ·±²»¶ÏµÄ·¢Éú£¬Ö±µ½µ±Äں˹ÜÀí·ÖÒ³µÄʱ¼ä³¬¹ýÔËÐгÌʽµÄʱ¼äʱ£¬ÏµÍ³Ð§Äܻἱ¾çϽµ¡£ÕâʱµÄϵͳÒѾ­ÔËÐзdz£Âý»ò½øÈëÔÝͣ״̬£¬ÕâÖÖ״̬Òà±»³Æ×÷thrashing(µßô¤)¡£

ÃüÁîʾÀý

vmstat¹¤¾ßµÄʹÓÃÊÇͨ¹ýÁ½¸öÊý×Ö²ÎÊýÀ´Íê³ÉµÄ£¬µÚÒ»¸ö²ÎÊýÊDzÉÑùµÄʱ¼ä¼ä¸ôÊý£¨µ¥Î»ÊÇÃ룩£»µÚ¶þ¸ö²ÎÊýÊDzÉÑùµÄ´ÎÊý£¬Èç:

root@Ubuntu:~# vmstat 2 1
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
r b swpd free buff cache si so bi bo in cs us sy id wa
1 0 0 3498472 315836 3819540 0 0 0 1 2 0 0 0 100 0
2±íʾÿ¸öÁ½Ãë²É¼¯Ò»´Î·þÎñÆ÷״̬£¬1±íʾֻ²É¼¯Ò»´Î¡£

ʵ¼ÊÉÏ£¬ÔÚÓ¦Óùý³ÌÖУ¬ÎÒÃÇ»áÔÚÒ»¶Îʱ¼äÄÚÒ»Ö±¼à¿Ø£¬²»Ïë¼à¿ØÖ±½Ó½áÊøvmstat¾ÍÐÐÁË£¬ÀýÈç:

root@ubuntu:~# vmstat 2
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
r b swpd free buff cache si so bi bo in cs us sy id wa
1 0 0 3499840 315836 3819660 0 0 0 1 2 0 0 0 100 0
0 0 0 3499584 315836 3819660 0 0 0 0 88 158 0 0 100 0
0 0 0 3499708 315836 3819660 0 0 0 2 86 162 0 0 100 0
0 0 0 3499708 315836 3819660 0 0 0 10 81 151 0 0 100 0
1 0 0 3499732 315836 3819660 0 0 0 2 83 154 0 0 100 0
Õâ±íʾvmstatÿ2Ãë²É¼¯Êý¾Ý£¬Ò»Ö±²É¼¯Ö±µ½ÎÒ½áÊø³ÌÐò£¬ÕâÀï²É¼¯ÁË5´ÎÊý¾ÝÎҾͽáÊøÁ˳ÌÐò¡£

ÃüÁî½éÉÜÍê±Ï£¬Ã¿¸ö²ÎÊýµÄÒâ˼£º

r ±íʾÔËÐжÓÁУ¨¾ÍÊÇ˵¶àÉÙ¸ö½ø³Ì·ÖÅäµ½CPU£©£¬²âÊԵķþÎñÆ÷ĿǰCPU±È½Ï¿ÕÏУ¬Ã»Ê²Ã´³ÌÐòÔÚÅÜ£¬µ±Õâ¸öÖµ³¬¹ýÁËCPUÊýÄ¿£¬¾Í»á³öÏÖCPUÆ¿¾±ÁË¡£Õâ¸öÒ²ºÍtopµÄ¸ºÔØÓйØÏµ£¬Ò»°ã¸ºÔس¬¹ýÁË3¾Í±È½Ï¸ß£¬³¬¹ýÁË5¾Í¸ß£¬³¬¹ýÁË10¾Í²»Õý³£ÁË£¬·þÎñÆ÷µÄ״̬ºÜΣÏÕ¡£topµÄ¸ºÔØÀàËÆÃ¿ÃëµÄÔËÐжÓÁС£Èç¹ûÔËÐжÓÁйý´ó£¬±íʾÄãµÄCPUºÜ·±Ã¦£¬Ò»°ã»áÔì³ÉCPUʹÓÃÂʺܸߡ£

b ±íʾ×èÈûµÄ½ø³Ì£¬½ø³Ì×èÈû£¬´ó¼Ò¶®µÄ¡£

swpd ÐéÄâÄÚ´æÒÑʹÓõĴóС£¬Èç¹û´óÓÚ0±íʾÄãµÄ»úÆ÷ÎïÀíÄÚ´æ²»×ãÁË£¨ÄÚ´æºÄ¾¡ÁË£¬¿ªÊ¼Ê¹ÓÃÐéÄâÄÚ´æ¿Õ¼äÁË£©£¬Èç¹û²»ÊdzÌÐòÄÚ´æÐ¹Â¶µÄÔ­Òò£¬ÄÇôÄã¸ÃÉý¼¶ÄÚ´æÁË»òÕ߰ѺÄÄÚ´æµÄÈÎÎñÇ¨ÒÆµ½ÆäËû»úÆ÷¡£

free ¿ÕÏеÄÎïÀíÄÚ´æµÄ´óС£¬»úÆ÷ÄÚ´æ×ܹ²8G£¬Ê£Óà3415M¡£

buff Linux/UnixϵͳÊÇÓÃÀ´´æ´¢£¬Ä¿Â¼ÀïÃæÓÐʲôÄÚÈÝ£¬È¨Ï޵ȵĻº´æ£¬±¾»ú´ó¸ÅÕ¼ÓÃ300¶àM

cache ÓÃÀ´¼ÇÒäÎÒÃÇ´ò¿ªµÄÎļþ£¬¸øÎļþ×ö»º³å¡£±¾»ú´ó¸ÅÕ¼ÓÃ300¶àM£¨ÕâÀïÊÇLinux/UnixµÄ´ÏÃ÷Ö®´¦£¬°Ñ¿ÕÏеÄÎïÀíÄÚ´æµÄÒ»²¿·ÖÄÃÀ´×öÎļþºÍĿ¼µÄ»º´æ£¬ÊÇΪÁËÌá¸ß³ÌÐòÖ´ÐеÄÐÔÄÜ£¬µ±³ÌÐòʹÓÃÄÚ´æÊ±£¬buffer/cached»áºÜ¿ìµØ±»Ê¹ÓÃ)

si ÿÃë´Ó´ÅÅ̶ÁÈëÐéÄâÄÚ´æµÄ´óС£¬Èç¹ûÕâ¸öÖµ´óÓÚ0£¬±íʾÎïÀíÄÚ´æ²»¹»ÓûòÕßÄÚ´æÐ¹Â¶ÁË£¬Òª²éÕÒºÄÄÚ´æ½ø³Ì½â¾öµô¡£ÎҵĻúÆ÷ÄÚ´æ³äÔ££¬Ò»ÇÐÕý³£¡£

so ÿÃëÐéÄâÄÚ´æÐ´Èë´ÅÅ̵ĴóС£¬Èç¹ûÕâ¸öÖµ´óÓÚ0£¬Í¬ÉÏ¡£

bi ¿éÉ豸ÿÃë½ÓÊյĿéÊýÁ¿£¬ÕâÀïµÄ¿éÉ豸ÊÇָϵͳÉÏËùÓеĴÅÅÌºÍÆäËû¿éÉ豸£¬Ä¬ÈÏ¿é´óСÊÇ1024byte¡£±¾»úÉÏûʲôIO²Ù×÷£¬ËùÒÔÒ»Ö±ÊÇ0£¬µ«ÊÇÎÒÔøÔÚ´¦Àí¿½±´´óÁ¿Êý¾Ý(2-3T)µÄ»úÆ÷ÉÏ¿´¹ý¿ÉÒÔ´ïµ½140000/s£¬´ÅÅÌдÈëËٶȲ¶à140MÿÃë

bo ¿éÉ豸ÿÃë·¢Ë͵ĿéÊýÁ¿£¬ÀýÈçÎÒÃǶÁÈ¡Îļþ£¬bo¾ÍÒª´óÓÚ0¡£biºÍboÒ»°ã¶¼Òª½Ó½ü0£¬²»È»¾ÍÊÇIO¹ýÓÚÆµ·±£¬ÐèÒªµ÷Õû¡£

in ÿÃëCPUµÄÖжϴÎÊý£¬°üÀ¨Ê±¼äÖжϣ¬±íʾÔÚijһʱ¼ä¼ä¸ôÖй۲⵽µÄÿÃëÉ豸ÖжÏÊý

cs ÿÃëÉÏÏÂÎÄÇл»´ÎÊý£¬ÀýÈçÎÒÃǵ÷ÓÃϵͳº¯Êý£¬¾ÍÒª½øÐÐÉÏÏÂÎÄÇл»£¬Ï̵߳ÄÇл»£¬Ò²Òª½ø³ÌÉÏÏÂÎÄÇл»£¬Õâ¸öֵҪԽСԽºÃ£¬Ì«´óÁËÒª¿¼Âǵ÷µÍÏ̻߳òÕß½ø³ÌµÄÊýÄ¿£¬ÀýÈçÔÚapacheºÍnginxÕâÖÖweb·þÎñÆ÷ÖУ¬ÎÒÃÇÒ»°ã×öÐÔÄܲâÊÔʱ»á½øÐм¸Ç§²¢·¢ÉõÖÁ¼¸Íò²¢·¢µÄ²âÊÔ£¬Ñ¡Ôñweb·þÎñÆ÷µÄ½ø³Ì¿ÉÒÔÓɽø³Ì»òÕßÏ̵߳ķåֵһֱϵ÷£¬Ñ¹²â£¬Ö±µ½csµ½Ò»¸ö±È½ÏСµÄÖµ£¬Õâ¸ö½ø³ÌºÍÏß³ÌÊý¾ÍÊDZȽϺÏÊʵÄÖµÁË¡£ÏµÍ³µ÷ÓÃÒ²ÊÇ£¬Ã¿´Îµ÷ÓÃϵͳº¯Êý£¬ÎÒÃǵĴúÂë¾Í»á½øÈëÄں˿ռ䣬µ¼ÖÂÉÏÏÂÎÄÇл»£¬Õâ¸öÊǺܺÄ×ÊÔ´£¬Ò²Òª¾¡Á¿±ÜÃâÆµ·±µ÷ÓÃϵͳº¯Êý¡£ÉÏÏÂÎÄÇл»´ÎÊý¹ý¶à±íʾÄãµÄCPU´ó²¿·ÖÀË·ÑÔÚÉÏÏÂÎÄÇл»£¬µ¼ÖÂCPU¸ÉÕý¾­ÊµÄʱ¼äÉÙÁË£¬CPUûÓгä·ÖÀûÓã¬ÊDz»¿ÉÈ¡µÄ¡£http://www.linuxidc.com

us Óû§CPUʱ¼ä£¬ÎÒÔø¾­ÔÚÒ»¸ö×ö¼ÓÃܽâÃÜºÜÆµ·±µÄ·þÎñÆ÷ÉÏ£¬¿ÉÒÔ¿´µ½us½Ó½ü100£¬rÔËÐжÓÁдﵽ80£¨»úÆ÷ÔÚ×öѹÁ¦²âÊÔ£¬ÐÔÄܱíÏÖ²»¼Ñ£©

sy ϵͳCPUʱ¼ä£¬Èç¹ûÌ«¸ß£¬±íʾϵͳµ÷ÓÃʱ¼ä³¤£¬ÀýÈçÊÇIO²Ù×÷Ƶ·±¡£

id ¿ÕÏÐ CPUʱ¼ä£¬Ò»°ãÀ´Ëµ£¬id + us + sy = 100£¬Ò»°ãÈÏΪidÊÇ¿ÕÏÐCPUʹÓÃÂÊ£¬usÊÇÓû§CPUʹÓÃÂÊ£¬syÊÇϵͳCPUʹÓÃÂÊ¡£

wt µÈ´ýIO CPUʱ¼ä¡£

ÃüÁ man vmstat

×÷Õߣºsunboy_2050
ÎÄÕÂÆÀÂÛ

¹²ÓÐ 0 ÌõÆÀÂÛ