Mem: 8176880k total, 8059736k used, 117144k free, 93040k buffers
Swap: 1004052k total, 108k used, 1003944k free, 7257056k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
4992 mysql 20 0 291m 115m 5380 S 65 1.4 739:54.71 mysqld
20260 apache 20 0 43032 18m 3964 S 27 0.2 0:02.50 apache2
20154 apache 20 0 41588 16m 3964 S 10 0.2 0:00.40 apache2
<snip>
Run Code Online (Sandbox Code Playgroud)
这是:Mem:总共8176880k,使用了8059736k;有什么好担心的!?
和想法?
非常感谢
编辑:忘了说我对服务器一无所知,我已经遇到了这个......
回答:
> free -m
total used free shared buffers …Run Code Online (Sandbox Code Playgroud) 我们使用具有 512MB 实例的 Slicehost。我们在它们上运行 Ubuntu 9.10。我安装了一些软件包,现在我正在尝试在运行任何东西之前优化 RAM 消耗。
一个简单的ps给我正在运行的进程列表:
# ps faux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 2 0.0 0.0 0 0 ? S< Jan04 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S< Jan04 0:15 \_ [migration/0]
root 4 0.0 0.0 0 0 ? S< Jan04 0:01 \_ [ksoftirqd/0]
root 5 0.0 0.0 0 0 ? S< Jan04 0:00 \_ [watchdog/0]
root 6 0.0 0.0 0 0 ? S< …Run Code Online (Sandbox Code Playgroud) 我的服务器一直处于非常高的内存使用率- 以至于它有时不允许我通过 ssh 登录。我必须在我登录之前重新启动服务器,当它重新启动时,内存使用率下降到 ~90% 并且慢慢地工作它高达 ~190%。
我注意到重新启动 apache 也会让我回到 90%,我可以使用托管工具慢慢观察内存上升。我一直在看top,但我不知道该看什么。我很确定罪魁祸首是 apache,但我不确定为什么。
top - 08:14:59 up 49 min, 1 user, load average: 0.04, 0.01, 0.00
Tasks: 41 total, 1 running, 40 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 946344k total, 724484k used, 221860k free, 0k buffers
Swap: 0k total, 0k used, 0k free, 0k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND …Run Code Online (Sandbox Code Playgroud) 我正在运行具有 512MB 内存的 Ubuntu VPS。它只是开发服务器,因此实际上没有流量。尽管如此,我还是时不时地收到 Memory Exhaustion 消息,我的整个内存都被耗尽了。我试图在 SF 浏览各种类似的问题,但无法真正解决没有流量的服务器消耗内存的情况。下面是顶部的输出:
ps aux 的输出为:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.3 23572 1684 ? Ss Apr11 0:03 init
root 1177 0.0 0.1 18888 1028 ? Ss Apr11 0:01 cron
mysql 1189 0.0 5.6 258344 29680 ? Ssl Apr11 1:04 /usr/sbin/mysqld
syslog 1202 0.0 0.1 12536 788 ? Ss Apr11 0:01 /sbin/syslogd -u syslog
root 1268 0.0 0.5 49424 2684 ? Ss Apr11 0:00 …Run Code Online (Sandbox Code Playgroud) 我注意到我跟踪到 MariaDB 的系统内存使用百分比(如 sar 报告)稳步增加。它似乎与数据库负载无关:这种增加与查询数量的增加不匹配。
我有以下尺寸配置:
key_buffer_size = 400000000
innodb_buffer_pool_size = 1210612736
Run Code Online (Sandbox Code Playgroud)
总共有 1.5GB,但它现在在 RSS 内存上达到了 2.3GB。
为什么变得这么贪婪?我可以让它更好地坚持它的极限吗?或者它可能坚持 InnoDB 的限制,但将内存用于其他用途,如果是这样,有没有办法理解这一点,以便我可以调整配置以将总内存使用量保持在一定水平内?或者它可能就像 Linux 内核一样,只是在空闲时使用所有空闲内存进行缓存,但根据需要愉快地放弃它?
我在 Debian 10 (Buster) 上使用 MariaDB 10.3.22。工作负载是一个网络服务器(所以我需要为其他进程保留一些内存:nginx+php)。如果需要,很高兴发布更多配置。
我们有带有 8GB Ram 的生产服务器(windows server 2008),服务器上托管了大约 15 个网站。需要为操作系统保留的最佳内存是多少,以便可以在网站之间分配剩余内存。除了网站,我们没有在服务器上运行任何其他进程或应用程序。
我注意到我的服务器运行缓慢,并且还发现 mysql 使用了大量内存 - 423.1 MB 空闲 3.9 GB ...
在我重新启动 mysql 后,它是 3.8 GB 的空闲空间,而不是 3.9 GB。
几分钟后,3.9 GB 可用 2.5 GB。
哪里有问题?它是centos,使用mysql 5.1。
先感谢您!
目前正在使用内存有限的 ubuntu 机器,想知道要使用什么 SQL 服务器?
我安装了 MySQL,它消耗了大量内存(几乎全部),但能够减少一点。
有人推荐了 Percona,有人推荐了 SQLite。想知道什么服务器使用基本 SQL 功能提供低内存使用率?
我有一个运行 apache 的 VPS,它在 Dreamhost 上内存不足。Dreamhost 说问题在于 wordpress 配置,但我认为这是他们的标准答案。我看过了,主要的网络托管来自mediawiki。我有时会运行 20-30 个 http 进程,它们都在运行 php,而 mediawiki 正在为我的前两个站点提供支持。
因此,我正在寻找有关减少 mediawiki 内存占用的方法的建议。我目前正在运行 1.16.4 版,我认为它明显落后于当前版本。(Dreamhost 应该为我升级它,但显然他们没有。)
谢谢!
我发现当系统内存不足时,磁盘IO使用率会很高。
这似乎多少进程正在阅读从硬盘疯狂地(查看htop下面的输出)。当我杀死一个使用太多内存的进程时,为系统释放一些内存。IO 使用率下降到正常状态。
该问题可以通过编写一个消耗大量内存的程序来重现,直到机器上没有足够的内存。当你杀死那个正在运行的程序时,一切都会恢复正常。
我知道交换的 os 机制。但似乎整个时间都没有使用交换(检查free和vmstat输出如下)。
? free -h
total used free shared buff/cache available
Mem: 859Mi 692Mi 60Mi 25Mi 106Mi 36Mi
Swap: 0B 0B 0B
Run Code Online (Sandbox Code Playgroud)
? htop
PID RES SHR CPU% MEM% TIME+ DISK READ DISK WRITE DISK R/W Command
6386 37316 5380 0.7 4.2 10:40.07 14.96 M/s 0.00 B/s 14.96 M/s ahdbserver-1.3.2-SNAPSH
23252 17880 15748 0.0 2.0 0:01.24 7.91 M/s 0.00 B/s 7.91 M/s postgres -D /var/lib/po
29428 …Run Code Online (Sandbox Code Playgroud)