当我在运行风暴拓扑的机器上运行ps aux | grep java时,我可以看到2个Java进程正在运行。
ps -ef | grep java | grep "storm"
UID PID PPID C STIME TTY TIME CMD
test-3p-s+ 10857 10661 0 Apr12 ? 1-02:21:25 java -server -Ddaemon.name=supervisor -Dstorm.options= -Dstorm.home=/usr/share/apache-storm -Dstorm.log.dir=/usr/share/apache-storm/logs -Djava.library.path=/usr/local/lib:/opt/local/lib:/usr/lib -Dstorm.conf.file= -cp /usr/share/apache-storm/lib/log4j-slf4j-impl-2.1.jar:/usr/share/apache-storm/lib/reflectasm-1.10.1.jar:/usr/share/apache-storm/lib/kryo-3.0.3.jar:/usr/share/apache-storm/lib/storm-core-1.0.1.jar:/usr/share/apache-storm/lib/servlet-api-2.5.jar:/usr/share/apache-storm/lib/log4j-core-2.1.jar:/usr/share/apache-storm/lib/log4j-api-2.1.jar:/usr/share/apache-storm/lib/objenesis-2.1.jar:/usr/share/apache-storm/lib/disruptor-3.3.2.jar:/usr/share/apache-storm/lib/log4j-over-slf4j-1.6.6.jar:/usr/share/apache-storm/lib/storm-rename-hack-1.0.1.jar:/usr/share/apache-storm/lib/asm-5.0.3.jar:/usr/share/apache-storm/lib/minlog-1.3.0.jar:/usr/share/apache-storm/lib/slf4j-api-1.7.7.jar:/usr/share/apache-storm/lib/clojure-1.7.0.jar:/usr/share/apache-storm/conf -Xmx2048m -Dlogfile.name=supervisor.log -DLog4jContextSelector=org.apache.logging.log4j.core.async.AsyncLoggerContextSelector -Dlog4j.configurationFile=/usr/share/apache-storm/log4j2/cluster.xml org.apache.storm.daemon.supervisor
test-3p-s+ 16121 10857 0 Oct13 ? 00:11:31 java -cp /usr/share/apache-storm/lib/log4j-slf4j-impl-2.1.jar:/usr/share/apache-storm/lib/reflectasm-1.10.1.jar:/usr/share/apache-storm/lib/kryo-3.0.3.jar:/usr/share/apache-storm/lib/storm-core-1.0.1.jar:/usr/share/apache-storm/lib/servlet-api-2.5.jar:/usr/share/apache-storm/lib/log4j-core-2.1.jar:/usr/share/apache-storm/lib/log4j-api-2.1.jar:/usr/share/apache-storm/lib/objenesis-2.1.jar:/usr/share/apache-storm/lib/disruptor-3.3.2.jar:/usr/share/apache-storm/lib/log4j-over-slf4j-1.6.6.jar:/usr/share/apache-storm/lib/storm-rename-hack-1.0.1.jar:/usr/share/apache-storm/lib/asm-5.0.3.jar:/usr/share/apache-storm/lib/minlog-1.3.0.jar:/usr/share/apache-storm/lib/slf4j-api-1.7.7.jar:/usr/share/apache-storm/lib/clojure-1.7.0.jar:/usr/share/apache-storm/conf:/var/lib/apache-storm/supervisor/stormdist/TestTopology-97-1665657576/stormjar.jar -Xmx64m -Dlogfile.name=worker.log -Dstorm.home=/usr/share/apache-storm -Dworkers.artifacts=/usr/share/apache-storm/logs/workers-artifacts -Dstorm.id=TestTopology-97-1665657576 -Dworker.id=3324b1de-e8ce-48e6-b065-3fd1f0659c20 -Dworker.port=6706 -Dstorm.log.dir=/usr/share/apache-storm/logs -Dlog4j.configurationFile=/usr/share/apache-storm/log4j2/worker.xml -DLog4jContextSelector=org.apache.logging.log4j.core.selector.BasicContextSelector org.apache.storm.LogWriter java -server -Xmx4g -Xms4g -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=16706 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -XX:+UseG1GC -XX:+AggressiveOpts -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:/var/log/apache-storm/gc.log -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=10 -XX:GCLogFileSize=1M -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp -Xmx4g -Djava.library.path=/var/lib/apache-storm/supervisor/stormdist/TestTopology-97-1665657576/resources/Linux-amd64:/var/lib/apache-storm/supervisor/stormdist/TestTopology-97-1665657576/resources:/usr/local/lib:/opt/local/lib:/usr/lib -Dlogfile.name=worker.log -Dstorm.home=/usr/share/apache-storm -Dworkers.artifacts=/usr/share/apache-storm/logs/workers-artifacts -Dstorm.conf.file= -Dstorm.options= -Dstorm.log.dir=/usr/share/apache-storm/logs -Djava.io.tmpdir=/var/lib/apache-storm/workers/3324b1de-e8ce-48e6-b065-3fd1f0659c20/tmp -Dlogging.sensitivity=S3 -Dlog4j.configurationFile=/usr/share/apache-storm/log4j2/worker.xml -DLog4jContextSelector=org.apache.logging.log4j.core.selector.BasicContextSelector -Dstorm.id=TestTopology-97-1665657576 -Dworker.id=3324b1de-e8ce-48e6-b065-3fd1f0659c20 -Dworker.port=6706 -cp /usr/share/apache-storm/lib/log4j-slf4j-impl-2.1.jar:/usr/share/apache-storm/lib/reflectasm-1.10.1.jar:/usr/share/apache-storm/lib/kryo-3.0.3.jar:/usr/share/apache-storm/lib/storm-core-1.0.1.jar:/usr/share/apache-storm/lib/servlet-api-2.5.jar:/usr/share/apache-storm/lib/log4j-core-2.1.jar:/usr/share/apache-storm/lib/log4j-api-2.1.jar:/usr/share/apache-storm/lib/objenesis-2.1.jar:/usr/share/apache-storm/lib/disruptor-3.3.2.jar:/usr/share/apache-storm/lib/log4j-over-slf4j-1.6.6.jar:/usr/share/apache-storm/lib/storm-rename-hack-1.0.1.jar:/usr/share/apache-storm/lib/asm-5.0.3.jar:/usr/share/apache-storm/lib/minlog-1.3.0.jar:/usr/share/apache-storm/lib/slf4j-api-1.7.7.jar:/usr/share/apache-storm/lib/clojure-1.7.0.jar:/usr/share/apache-storm/conf:/var/lib/apache-storm/supervisor/stormdist/TestTopology-97-1665657576/stormjar.jar org.apache.storm.daemon.worker TestTopology-97-1665657576 b64def27-088a-41ae-95a9-b5195c88bbfa 6706 3324b1de-e8ce-48e6-b065-3fd1f0659c20
test-3p-s+ 16158 16121 87 Oct13 ? 15-13:11:48 java -server -Xmx4g -Xms4g -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=16706 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -XX:+UseG1GC -XX:+AggressiveOpts -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:/var/log/apache-storm/gc.log -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=10 -XX:GCLogFileSize=1M -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp -Xmx4g -Djava.library.path=/var/lib/apache-storm/supervisor/stormdist/TestTopology-97-1665657576/resources/Linux-amd64:/var/lib/apache-storm/supervisor/stormdist/TestTopology-97-1665657576/resources:/usr/local/lib:/opt/local/lib:/usr/lib -Dlogfile.name=worker.log -Dstorm.home=/usr/share/apache-storm -Dworkers.artifacts=/usr/share/apache-storm/logs/workers-artifacts -Dstorm.conf.file= -Dstorm.options= -Dstorm.log.dir=/usr/share/apache-storm/logs -Djava.io.tmpdir=/var/lib/apache-storm/workers/3324b1de-e8ce-48e6-b065-3fd1f0659c20/tmp -Dlogging.sensitivity=S3 -Dlog4j.configurationFile=/usr/share/apache-storm/log4j2/worker.xml -DLog4jContextSelector=org.apache.logging.log4j.core.selector.BasicContextSelector -Dstorm.id=TestTopology-97-1665657576 -Dworker.id=3324b1de-e8ce-48e6-b065-3fd1f0659c20 -Dworker.port=6706 -cp /usr/share/apache-storm/lib/log4j-slf4j-impl-2.1.jar:/usr/share/apache-storm/lib/reflectasm-1.10.1.jar:/usr/share/apache-storm/lib/kryo-3.0.3.jar:/usr/share/apache-storm/lib/storm-core-1.0.1.jar:/usr/share/apache-storm/lib/servlet-api-2.5.jar:/usr/share/apache-storm/lib/log4j-core-2.1.jar:/usr/share/apache-storm/lib/log4j-api-2.1.jar:/usr/share/apache-storm/lib/objenesis-2.1.jar:/usr/share/apache-storm/lib/disruptor-3.3.2.jar:/usr/share/apache-storm/lib/log4j-over-slf4j-1.6.6.jar:/usr/share/apache-storm/lib/storm-rename-hack-1.0.1.jar:/usr/share/apache-storm/lib/asm-5.0.3.jar:/usr/share/apache-storm/lib/minlog-1.3.0.jar:/usr/share/apache-storm/lib/slf4j-api-1.7.7.jar:/usr/share/apache-storm/lib/clojure-1.7.0.jar:/usr/share/apache-storm/conf:/var/lib/apache-storm/supervisor/stormdist/TestTopology-97-1665657576/stormjar.jar org.apache.storm.daemon.worker TestTopology-97-1665657576 b64def27-088a-41ae-95a9-b5195c88bbfa 6706 3324b1de-e8ce-48e6-b065-3fd1f0659c20由于pid的PPID与以前的java进程的pid相同,这3个java进程似乎都与父客户端相关。但请一些人解释一下:
java.lang.Process API?)进程?
发布于 2022-10-31 07:04:59
这可能只是一个部分的答案。在您的终端中,您基本上可以看到3个进程:
Supervisor --这是一个总体的风暴过程,负责LogWriters和Workers.之间的协调,因此它基本上启动并杀死了它们,并且有自己的日志文件。您还可以配置您想要生成多少个LogWriter:这似乎是生成日志的责任--但我真的不知道为什么需要一个单独的JVM。Worker --这是在执行一个拓扑的一个操作符(螺栓或喷口)。因此,这是由主管创建的,并且只要拓扑存在,就会存在。您可以并行运行多个工作人员。我也不知道为什么他们设计它那样-所以请看看我的单独的question。对于产卵的确切时间和调用,您需要深入研究它们的实现--我第一眼就无法识别相关代码--但是如果您能够分享您的结果,我会很高兴的。
https://stackoverflow.com/questions/74259555
复制相似问题