标签: top

top/htop 中的内存使用量

有人可以解释一下这个顶级输出吗?每个 PHP 进程使用的是总内存的 30% 还是已用内存的 30%?此外,所有 PHP 进程的总使用内存怎么会远远超过我的系统内存?这是共享内存吗?

提前致谢

top - 14:15:34 up 2 days, 12:38,  1 user,  load average: 0.97, 1.03, 0.93
Tasks: 124 total,   1 running, 123 sleeping,   0 stopped,   0 zombie
Cpu(s):  4.9%us,  0.3%sy,  0.0%ni, 94.6%id,  0.0%wa,  0.0%hi,  0.1%si,  0.1%st
Mem:   1029508k total,   992140k used,    37368k free,   150404k buffers
Swap:   262136k total,     2428k used,   259708k free,   551500k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
 6695 www-data  20   0  548m 307m 292m …
Run Code Online (Sandbox Code Playgroud)

linux php memory top

28
推荐指数
1
解决办法
4万
查看次数

Linux 中如何报告内存使用情况?

使用 ps,我可以看到大小、vsize(与 top 的 VIRT 相同?)和 rss(与 top 的 RES 相同?)。(我在上面看到的另一个是 SHR。)

有人可以为我总结这些不同领域的含义吗?

linux memory top ps

20
推荐指数
2
解决办法
2万
查看次数

找出高 CPU 使用率的 apache 进程实际上在做什么?

目前我们的服务器存在一些问题,间歇性地,我们似乎得到了 apache 进程,这些进程只是运行和运行,占用 100% 的 CPU。

运行 top 时,我们看到以下内容:

PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
20788 www-data  20   0  318m  18m 3984 R  100  0.0  40:29.21 /usr/sbin/apache2 -k start
23523 www-data  20   0  319m  20m 4684 R  100  0.0   4:12.36 /usr/sbin/apache2 -k start
Run Code Online (Sandbox Code Playgroud)

我想尝试找出导致这种情况的脚本(或任何脚本),所以我尝试了:

 strace -p 20788
Run Code Online (Sandbox Code Playgroud)

但这根本没有显示任何输出(我已经离开了大约 10 分钟,它什么也没显示)。根据我的理解,这可能意味着它陷入了无限循环,并且没有任何“系统调用”可以显示。

我还能做些什么来显示正在发生的事情吗?

谢谢

编辑 -忘了说,这是一个随时都有几百个用户的实时服务器!所以我真的不能随意尝试更改配置选项并重新启动 apache。

编辑 2 - 当 PHP 未配置 --enable-debug 时,来自 gdb 的回溯 (bt) 似乎并不是那么有用 - 它只显示“execute()”,但我需要知道 PHP 脚本是什么实际运行..还有其他方法吗?

#0  0x00007f6c143fb0c5 …
Run Code Online (Sandbox Code Playgroud)

linux top strace apache-2.2 ubuntu-12.04

19
推荐指数
2
解决办法
11万
查看次数

如何让 linux top 命令以兆字节而不是千字节显示内存摘要

红帽EL5

我按照我喜欢的方式配置了我的顶部,以 MB 为单位显示内存摘要和交换摘要。我不得不关闭我的外壳,然后当我重新打开它时,它又以(默认?)千字节显示。

我已经搜索了 google 和 top help 并管理了页面。我似乎无法在 MB 选项中找到显示。虽然,我确实发现了许多其他有些奇怪的选择......

如果有人知道我肯定会很感激。

谢谢!

linux memory redhat top

18
推荐指数
4
解决办法
5万
查看次数

有些东西会吃掉所有内存(我怀疑某些应用程序存在内存泄漏)。如何检测什么?

我有运行liquidsoap+icecast 包和简单网站(httpd+mysqld)的服务器。没什么特别的。每天约有 2000 多名访客,平均约有 50 人同时在线。

服务器有 8GB 内存。随着时间的流逝,可用内存量不断减少,尽管服务器上没有启动任何新内容并且没有新用户。在某些时候它开始交换,服务器上的负载上升并且变得无响应。通常我所做的只是重新启动服务器......

可以做些什么来检测究竟是什么泄漏了内存?我使用 top 来监控资源的使用情况,但据我所知,它没有任何帮助:

在此处输入图片说明

有没有办法找出使用那么多内存的东西?或者什么开始大量交换到磁盘?有什么方法可以在不重新启动服务器的情况下释放内存?

linux resources top memory-leak memory-usage

17
推荐指数
3
解决办法
8万
查看次数

顶部未计算的 10 GB RAM

这是我的freesmem输出:

danslimmon@bad-server:~$ free -m
             total       used       free     shared    buffers     cached
Mem:         30147      29928        218          6          4       3086
-/+ buffers/cache:      26837       3309
Swap:            0          0          0

danslimmon@bad-server:~$ smem -tw
Area                           Used      Cache   Noncache
firmware/hardware                 0          0          0
kernel image                      0          0          0
kernel dynamic memory      12857576    2887440    9970136
userspace memory           17661400    1272468   16388932
free memory                  351592     351592          0
----------------------------------------------------------
                           30870568    4511500   26359068
Run Code Online (Sandbox Code Playgroud)

这是我的top输出的头部,按 RSS 排序:

top - 15:51:13 up 248 days, 14:20,  1 user,  load …
Run Code Online (Sandbox Code Playgroud)

linux top memory-usage

17
推荐指数
2
解决办法
2069
查看次数

如何从 Linux Top 屏幕中排除某些用户?

top屏幕中,默认情况下它会显示所有用户的进程。如何从顶部实时屏幕中排除某些用户(例如,root 和 nobody)?

linux users top

16
推荐指数
1
解决办法
8811
查看次数

哪个 Linux 软件包包含“top”命令?

许多Linux中的常用工具可能来自包装在UTIL-Linux的Linux基金会的coreutils从GNU。top的手册页没有指定任何内容。

我正在使用 CentOS。

linux centos top

13
推荐指数
2
解决办法
1万
查看次数

CPU 负载高,但顶部的顶部进程大约为 0%

我们有一台负载异常高且 CPU 利用率异常高的服务器,但我们不知道为什么。当我们运行 top 时,所有的 proc 似乎都是非常低的 CPU。

http://cl.ly/2d1g0K3q261r0R0K3e35

有没有更好的方法来寻找导致这种情况的原因?

central-processing-unit top

12
推荐指数
2
解决办法
1万
查看次数

使用 top 命令的 cron 脚本和 TERM 定义的问题

我在执行 cron 进程以检查服务器中当前的 CPU 使用情况时遇到问题。

我的脚本开始于:

top -c -n 1 -u www-data > /tmp/kill-cpu
Run Code Online (Sandbox Code Playgroud)

我可以在控制台中毫无问题地执行,但在 cron 中我得到

顶部:tty 获取失败

如果我使用 -b 选项到顶部

top -b -n 1
Run Code Online (Sandbox Code Playgroud)

我得到

'dumb':未知终端类型。

我使用 xterm 作为 TERM

感谢您的帮助 :)
Lito。

解决方案:我能够通过以下方式解决问题:

ln -s /lib/terminfo/d/dumb /usr/share/terminfo/d/dumb
Run Code Online (Sandbox Code Playgroud)

top term cron xterm

12
推荐指数
1
解决办法
1万
查看次数