Por que parar o httpd com -k stop elimina as instâncias do tomcat?

1

Por alguma razão, toda vez que eu paro uma segunda instância do httpd usando

/usr/sbin/httpd -f /otherplace/httpd.conf -k stop

Uma ou duas das minhas ocorrências de tomcat são mortas (retiradas da memória), sem erros ou rastros do que está acontecendo.

Eu iniciei esta segunda instância usando o seguinte comando:

/usr/sbin/httpd -f /otherplace/httpd.conf -k start

Os detalhes abaixo:

Minhas instâncias do Tomcat são vinculadas à porta 80 em IPs diferentes. A segunda instância do httpd liga-se à porta 5634 (nada é vinculado a essa porta). Há instaces de tomcat que eles não são mortos, é como uma coisa aleatória.

Obrigado pela sua ajuda.

    
por Geo 29.06.2009 / 17:25

3 respostas

1

Talvez tente alterar o comando SHUTDOWN padrão do server.xml

<Server port="8005" shutdown="SHUTDOWN" debug="0">

para algo como

<Server port="8005" shutdown="0fbb9aebcbfbef203eca71b6be367859" debug="0">

Qualquer coisa que envie "SHUTDOWN" para a porta padrão irá parar o tomcat, talvez o seu httpd esteja enviando através do conector ou algo assim. referência 1 , referência 2

    
por 29.06.2009 / 19:36
0

O Apache tem um módulo que pode encaminhar solicitações para o tomcat. Este módulo está ativado? Tente desativá-lo se você não precisar dele.

    
por 29.06.2009 / 19:53
0

Não estou dizendo que sei especificamente como o tomcat realiza desligamentos ... Eu esperaria um pidfile associado ao processo, ou uma porta de controle que informa ao aplicativo para desligar.

Excluindo-se, no entanto, é comum que os scripts "procurem e matem" olhando para a saída "ps -ef" (ou similar). Nesses casos, é fácil para os scripts de kill serem muito agressivos e matar todos os pids correspondentes (ou apenas os pais desses pids).

Não posso dizer quantas vezes eu editei um script em 'vi' apenas para ser morto por um comando agressivo de 'stop' em algum lugar.

    
por 30.06.2009 / 03:23