我有这样的场景:一台4 4GB内存的centos机器,运行两个tomcats,一个里面有3个应用程序,另一个运行2个应用程序,还有一个wildfly在上面运行一个应用程序。
此外,我还有一个SpringBoot应用程序(嵌入tomcat),它公开了rest api,侦听一些端口。
Wildfly运行的是xmx的3072和xms的2048。Tomcat的xmx为1024,xms为512。
我正在对springBoot应用程序进行负载测试,当测试接近完成时,wildfly进程崩溃了。
我看到内存使用率,正如预期的那样,几乎是最大的,CPU也是如此,特别是在springBoot进程上。
我的问题是,这是一种linux-centos条件,将一些进程优先于另一个进程并杀死它吗?或者是JVM条件?
谢谢。
发布于 2017-08-04 06:12:53
当Linux内存不足时,内存不足杀手将选择一个或多个要杀死的进程。选择标准之一是进程正在使用的内存量。内存使用率越高,不良等级越高。这使得您的Wildfly进程很可能会被终止。您可以阅读有关面向对象模型杀手和选择标准here的更多信息。
https://stackoverflow.com/questions/45494422
复制相似问题