Estou começando a converter todos os nossos sistemas para o uso inicial para gerenciar nossos vários processos de aplicativos. Uma coisa que sempre sinto falta é a capacidade de enviar um sinal diferente para o processo stop
ou restart
eventos.
Por exemplo, executamos nossos processos da web com o Unicorn . O Unicorn possui uma ótima API de manipulação de sinal. Quando quero recarregar o processo normalmente, envio ao mestre um sinal USR2. Para desligá-los normalmente, envio um comando QUIT. TERM (sinal de parada padrão do iniciante) constitui um desligamento imediato.
Outro exemplo está usando o Resque . Para desligar um trabalhador normalmente, eu envio o sinal QUIT. O sinal TERM novamente causa o desligamento imediato, se o filho do trabalhador é bifurcado ou não.
O iniciante suporta sinais personalizados? Não consigo encontrá-lo em lugar nenhum, o que me preocupa porque estou usando a "ferramenta errada para o trabalho".
fonte
reload signal SIGUSR2
, mas requer a versão inicial v 1.10.0.A partir da versão inicial v1.10.0, você pode definir um "sinal de recarga".
https://launchpad.net/upstart/1.x/1.10.0
Esta versão está disponível no ubuntu a partir da v13.10 ... Eu usei estas instruções para atualizar minha instância do ec2:
/ubuntu/302762/upgrading-13-04-to-13-10
Uso rails + puma e atualizo graciosamente com essa diretiva no meu arquivo /etc/init/app-1.conf:
fonte