#10: pmap -进程的内存使用
pmap命令可以显示进程的内存映射,使用这个命令可以找出造成内存瓶颈的原因。
# pmap -d PID
显示 PID为 47394进程的内存信息。
# pmap -d 47394
输出样例:
47394: /usr/bin/php-cgi
Address Kbytes Mode Offset Device Mapping
0000000000400000 2584 r-x--0000000000000000 008:00002 php-cgi
0000000000886000 140 rw---0000000000286000 008:00002 php-cgi
00000000008a9000 52 rw---00000000008a9000 000:00000 [ anon ]
0000000000aa8000 76 rw---00000000002a8000 008:00002 php-cgi
000000000f678000 1980 rw---000000000f678000 000:00000 [ anon ]
000000314a600000 112 r-x--0000000000000000 008:00002 ld-2.5.so
000000314a81b000 4 r----000000000001b000 008:00002 ld-2.5.so
000000314a81c000 4 rw---000000000001c000 008:00002 ld-2.5.so
000000314aa00000 1328 r-x--0000000000000000 008:00002 libc-2.5.so
000000314ab4c000 2048 -----000000000014c000 008:00002 libc-2.5.so
.....
......
..
00002af8d48fd000 4 rw---0000000000006000 008:00002 xsl.so
00002af8d490c000 40 r-x--0000000000000000 008:00002 libnss_files-2.5.so
00002af8d4916000 2044 -----000000000000a000 008:00002 libnss_files-2.5.so
00002af8d4b15000 4 r----0000000000009000 008:00002 libnss_files-2.5.so
00002af8d4b16000 4 rw---000000000000a000 008:00002 libnss_files-2.5.so
00002af8d4b17000 768000 rw-s-0000000000000000 000:00009 zero (deleted)
00007fffc95fe000 84 rw---00007ffffffea000 000:00000 [ stack ]
ffffffffff600000 8192 -----0000000000000000 000:00000 [ anon ]
mapped: 933712K writeable/private: 4304K shared: 768000K
Address Kbytes Mode Offset Device Mapping
0000000000400000 2584 r-x--0000000000000000 008:00002 php-cgi
0000000000886000 140 rw---0000000000286000 008:00002 php-cgi
00000000008a9000 52 rw---00000000008a9000 000:00000 [ anon ]
0000000000aa8000 76 rw---00000000002a8000 008:00002 php-cgi
000000000f678000 1980 rw---000000000f678000 000:00000 [ anon ]
000000314a600000 112 r-x--0000000000000000 008:00002 ld-2.5.so
000000314a81b000 4 r----000000000001b000 008:00002 ld-2.5.so
000000314a81c000 4 rw---000000000001c000 008:00002 ld-2.5.so
000000314aa00000 1328 r-x--0000000000000000 008:00002 libc-2.5.so
000000314ab4c000 2048 -----000000000014c000 008:00002 libc-2.5.so
.....
......
..
00002af8d48fd000 4 rw---0000000000006000 008:00002 xsl.so
00002af8d490c000 40 r-x--0000000000000000 008:00002 libnss_files-2.5.so
00002af8d4916000 2044 -----000000000000a000 008:00002 libnss_files-2.5.so
00002af8d4b15000 4 r----0000000000009000 008:00002 libnss_files-2.5.so
00002af8d4b16000 4 rw---000000000000a000 008:00002 libnss_files-2.5.so
00002af8d4b17000 768000 rw-s-0000000000000000 000:00009 zero (deleted)
00007fffc95fe000 84 rw---00007ffffffea000 000:00000 [ stack ]
ffffffffff600000 8192 -----0000000000000000 000:00000 [ anon ]
mapped: 933712K writeable/private: 4304K shared: 768000K
最后一行非常重要:
* mapped:
933712K内存映射所占空间大小
* writeable/private:
4304K私有地址空间大小
* shared:
768000K共享地址空间大小
#11和 #12:netstat和 ss -网络相关信息
netstat可以显示网络链接、路由表信息、接口统计信息、伪装链接和多播成员(multicast
memberships),ss命令用来显示网络套接字信息,它允许显示类似 netstat一样的信息。
#13:iptraf -网络实时信息
iptraf是一个可交互式的 IP网络监控工具。它可以生成多种网络统计信息包括:TCP信息、UDP数量、ICMP和 OSPF信息、以太网负载信息、节点状态、IP校验错误等。有下面几种信息格式:
1..不同网络 TCP链接传输量
2.不同网络接口 IP传输量
3.不同协议网络传输量
4.不同 TCP/UDP端口和不同包大小网络传输量
5.不同第二层地址网络传输量
图02:一般接口信息:不同网络接口 IP传输量
图03:不同网络 TCP链接传输量