小编gis*_*sit的帖子

VPS 上的 Linux 内存不足

在我的 VPS (CentOS) 4GB ram(2 + 2 需要时动态分配)上,我让 tomcat 运行以下选项 JAVA_OPTS="-Xms256m -Xmx2048m -XX:MaxPermSize=256m"。

现在,当我尝试启动其他基于 Java 的应用程序(如 hudson 服务器)时,出现以下错误:

 没有足够的内存供 Java 运行时环境继续使用。
 本机内存分配 (malloc) 未能为 Chunk::new 分配 664080 字节
 包含更多信息的错误报告文件保存为:
 /server/hs_err_pid26476.log

似乎系统无法分配 650KB 的内存,但它应该有 1.2 GB 的空闲空间。

自由 -m 
             缓存的已用空闲共享缓冲区总数
内存:4096 2816 1279 0 0 0
-/+ 缓冲区/缓存:2816 1279
交换:0 0 0

我发现在某个地方我还应该检查 /proc/user_beancounters,它在 privvmpages 上显示了 failcnt。我不知道这意味着什么(提供商是否按预期提供了 4GB 内存?还是他在作弊?)

# cat /proc/user_beancounters
版本:2.5
       uid 资源持有 maxheld 屏障限制 failcnt
 70692271:kmemsize 15371949 15388993 41943040 46137344 0
            锁定页面 0 0 1024 1024 0
            privvmpages …

linux vps java virtual-memory

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

标签 统计

java ×1

linux ×1

virtual-memory ×1

vps ×1