应用程序以多个进程运行

我有一个运行在RedHat linux上的java / tomcat应用程序。 最初,当我启动应用程序,一切似乎工作得很好。 但是,经过一段时间,我猜想1-2天,我目睹了以下的成绩。

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 7023 root 20 0 2857m 577m 5920 S 0.0 14.6 5:12.80 /prd/JAVA//bin/java -Djava.util.logging.config.file=/prd/myapp 17729 myus 20 0 2875m 574m 5920 S 0.0 14.5 10:49.76 /prd/JAVA//bin/java -Djava.util.logging.config.file=/prd/myapp 12597 root 20 0 2868m 564m 6304 S 0.0 14.3 5:54.86 /prd/JAVA//bin/java -Djava.util.logging.config.file=/prd/myapp 15863 myus 20 0 2856m 563m 5936 S 0.0 14.2 10:21.21 /prd/JAVA//bin/java -Djava.util.logging.config.file=/prd/myapp 

我真的很困惑,我的应用程序如何运行4次。 对于什么是值得的,这也是所有4个实例的记忆。 请澄清一下这个谜。

它可能会在应用程序中自动重新启动jvm代码。 我会寻找像crontab显而易见的地方,也看看为什么它是在两个用户下启动(这意味着正在从两个地方开始)。 如果它是一个内部应用程序,那么你也可以问开发者,因为他可以从应用程序本身重新启动应用程序。

您可以使用crontab -l命令查看myuser和root的crontab -l 。 如果什么都没有的话,那么logrotateconfiguration的postrotate部分正在启动新的进程。