Proceso Tomcat que aparece varias veces

Proceso Tomcat que aparece varias veces

Tengo un servidor Tomcat 9 ejecutándose en mi Centos 7.

Cuando emito el htopcomando, tengo un proceso de Tomcat que aparece varias veces y me gustaría entender por qué aparece varias veces.

 PID USER      PRI  NI  VIRT   RES   SHR S CPU% MEM%   TIME+  Command
   18 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:07.27 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
    1 root       20   0 5517M 1264M 13248 S  0.0 10.9  1:16.08 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   20 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:01.05 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   33 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.25 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   36 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.36 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   17 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:34.36 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   38 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.86 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   21 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.08 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   42 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.70 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   58 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.22 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   13 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.95 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   35 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.39 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   40 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.31 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   34 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.85 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   37 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.37 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   24 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.09 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   10 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:21.94 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   11 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.90 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   12 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.93 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   14 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.01 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   15 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.02 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   16 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.00 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   19 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.06 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   22 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.02 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   23 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.00 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   25 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.06 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   28 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.00 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   29 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.00 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   31 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.04 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   32 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.04 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   39 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.74 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   41 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.25 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   44 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.12 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   45 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.02 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
   46 root       20   0 5517M 1264M 13248 S  0.0 10.9  0:00.00 /docker-java-home/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager

/etc/systemd/system/tomcat.servicio

[Unit]
Description=Apache Tomcat Web Application Container
Wants=network.target
After=network.target

[Service]
Type=forking

Environment=JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b10-0.el8_0.x86_64/jre

Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat
Environment='CATALINA_OPTS=-Xms512M -Xmx1G -Djava.net.preferIPv4Stack=true'
Environment='JAVA_OPTS=-Djava.awt.headless=true'

ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
SuccessExitStatus=143

User=tomcat
Group=tomcat
UMask=0007
RestartSec=10
Restart=always

[Install]
WantedBy=multi-user.target

Habilite el servicio Tomcat para que se inicie automáticamente al iniciar el sistema.

systemctl enable tomcat

Respuesta1

Es posible que desee verificar el contenido del siguiente archivo en su inicio de Tomcat: $CATALINA_HOME/conf/server.xml (simplemente localice server.xml si no está seguro de dónde está) y verifique las configuraciones de maxThreads y minSpareThreads en su archivo.

Básicamente, se usa principalmente en usuarios de carga pesada/alta concurrencia: configuraciones de Tomcat. La configuración es solo para indicarle a Tomcat el mínimo y el máximo de subprocesos que necesita/puede generar para manejar las solicitudes http.

Espero que esto responda a su pregunta

información relacionada