Posso reiniciar graciosamente o httpd, redis e php-fpm sem afetar os visitantes do meu site?

0

Estou executando um site baseado em Magento com muitos recursos por meio de uma combinação de Apache httpd, redis e php-fpm.

Quando faço alterações nos arquivos PHP principais, é necessário reiniciar os serviços acima para garantir que nenhum código antigo seja armazenado em cache, o que pode (e não) estragar o Magento.

No passado, quando eu usava o httpd, simplesmente corri service httpd graceful para reiniciar normalmente sem afetar os visitantes do site, mas agora que tenho que reiniciar vários serviços (e liberar redis), o site fica indisponível por alguns segundos. / p>

É possível evitar isso?

    
por WackGet 01.09.2016 / 05:14

1 resposta

1

Se você olhar a documentação do Apache, verá que o Apache usa o sinal USR1 por esta. Como tal, é uma rotina personalizada. Você terá que verificar a documentação dos outros componentes para ver sempre que eles oferecem ou não opções semelhantes. Um sucesso para php-fpm é, e. Podemos recarregar um dos PHP- FPM pool sem incomodar os outros .

Se um dos componentes não tiver essa opção, você não poderá fazê-lo com um único servidor / site. Você precisaria de algum tipo de cluster ou balanceador que permitisse redirecionar seus usuários para a nova versão e desativar a versão antiga após algum tempo. Uma alternativa pode ser programar o reinício para algum tempo de tráfego baixo (por exemplo, durante a noite).

    
por 01.09.2016 / 08:56