我遇到了一个奇怪的问题,我尝试了所有方法但无法解决。
我有一个 Wildfly 8.2 实例,运行一个控制 CallCenter 的 JavaEE 应用程序,该应用程序使用 2 到 8 GB 的内存,取决于有多少人正在工作,该应用程序控制电话,以及用于配置/报告和其他内容的 Web 界面。
野生苍蝇随机被杀死,我在控制台中看到以下消息:
*** JBossAS process XXXX received kill signal ***
我需要重新开始。
我读到可能是 linux OOM Killer 终止了我的进程,所以我在 /proc/wildfly_pid/oom_adj 中设置了值 -17,正如我在文档中读到的,它使得 oom killer 忽略该进程,但它似乎不起作用,wildfly 不断被终止,我做了一个 cron 作业来每 1 分钟配置一次 oom_adj,并检查它,配置正确,但没有任何帮助。
我正在监控该应用程序,它的内存大约为 3 GB,然后它就被杀死了,它可以运行几个小时,但会随机被杀死。
我不知道该怎么办,我在客户端上使用 Debian 7.8,服务器有 16GB 内存,Wildfly 8.2 处于独立模式,并带有以下 java 选项
-server -Xms256m -Xmx8192m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=$JBOSS_MODULES_SYSTEM_PKGS -Djava.awt.headless=true
任何帮助都将非常感激。
dmesg 输出的链接消息