Por que o netstat mostra o processo do Tomcat escutando várias portas?

1

A saída netstat com o processo tomcat (pid: 28899) é a seguinte:

Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:8009            0.0.0.0:*               LISTEN      28899/java      
....
tcp        0      0 0.0.0.0:8000            0.0.0.0:*               LISTEN      28899/java        
....
tcp        0      0 127.0.0.1:8005          0.0.0.0:*               LISTEN      28899/java 

Então, por que um processo pode escutar em três portas tcp? É porque 8009 e 8005 são ouvidos por dois processos-filhos do tomcat e netstat exibem apenas o ID do processo pai?

    
por twimo 06.11.2012 / 21:22

2 respostas

1

A resposta curta é "porque o processo pedia ao kernel para ligar a três portas". Não há bar implícito nisso; aqui está meu apache, ouvindo alegremente duas portas:

[madhatta@lory mail]$ sudo netstat -apn|grep http
tcp        0      0 178.18.123.145:443          0.0.0.0:*                   LISTEN      1753/httpd          
tcp        0      0 :::80                       :::*                        LISTEN      1753/httpd          
    
por 06.11.2012 / 21:39
1

Mais especificamente, 8009 é a porta do conector AJP padrão para o Tomcat (por exemplo, mod_ajp no Apache para se comunicar com o Tomcat) e localhost: 8005 é a porta de desligamento padrão. Presumivelmente, você está usando 8000 como a porta do conector HTTP. Você deve ser capaz de encontrar uma discussão mais aprofundada na documentação do Tomcat.

    
por 06.11.2012 / 21:53