Como visualizar e eliminar processos PHP?

3

Sou muito novo em usar o SSH e estou tendo problemas para encontrar uma maneira de visualizar e eliminar processos do PHP em execução.

Quando eu digo "processos PHP", quero dizer arquivos PHP que foram iniciados através do navegador, mas que continuaram a ser executados quando deveriam parar.

Eu tentei isso:

ps aux | grep php

Mas não há resultados, mesmo sabendo que os arquivos estão em execução.

Como posso ver os arquivos que estão sendo executados e depois matá-los seletivamente (ou matá-los todos)?

    
por Nate 23.01.2014 / 00:50

2 respostas

6

O Htop pode ser usado para visualizar processos e matá-los seletivamente:

sudo apt-get install htop

Como ckujau disse, depende da sua configuração, mas normalmente um novo processo de php é gerado pelo apache e é válido para a duração de uma solicitação. No htop, inspecione o apache enquanto faz uma solicitação. Um processo de php deve começar. Se permanecer vivo, você pode selecioná-lo e matá-lo.

Aqui está uma captura de tela do htop mostrando processos do php-fpm. O php-fpm mantém um conjunto de processos PHP de longa duração, capazes de serem reutilizados para múltiplas solicitações.

Nota 'htop' é uma versão mais amigável do 'top'.

Veja também o htop explicado: link

    
por 23.01.2014 / 02:21
1

Os "arquivos php", ou seja, os arquivos de programas que terminam em .php podem não estar visíveis com ps . Mas ps poderá exibir a máquina que, por sua vez, executará os arquivos .php . Dependendo da sua configuração, isso pode ser gerenciado por meio de fast-cgi ou mod_php ou até mesmo php-fpm . Se você usar mod_php , não haverá "processos php" visíveis para ps . Você ainda pode ver se o seu mecanismo PHP está em uso usando lsof :

$ lsof -ln
[...]
    
por 23.01.2014 / 01:22

Tags