Por que minhas instâncias de app não estão sendo reduzidas conforme esperado?

Quando o tráfego para seu aplicativo desacelera, de modo que seu app começa a diminuir, você observa que as instâncias não desaparecem.

Quando a carga de trabalho recebida está lenta para seu aplicativo, o Code Engine começa a reduzir automaticamente a capacidade de um aplicativo com base em seus valores de ajuste de escala configurados. Code Engine envia uma mensagem SIGTERM para seu aplicativo. Seu código deve reagir a este sinal e desligar. Se seu código não manipular a mensagem SIGTERM, suas instâncias do aplicativo permanecerão no status Terminating durante o valor de tempo limite de solicitação configurado (padrão: 300 segundos).

Tente uma dessas soluções.

  • Revise a documentação sobre como o ajuste de escala funciona.. Consulte Configurando o ajuste de escala do aplicativo.

  • Revise os valores configurados para ajuste automático de escala para seu aplicativo.

    • No console, acesse a página do aplicativo. As configurações de ajuste automático de escala estão na guia Configuração> Tempo de execução
    • Com a CLI, execute o comando ibmcloud ce app get para exibir detalhes de seu app.
  • Assegure que seu código manipule mensagens SIGTERM. Para que os aplicativos reduzam a capacidade de forma limpa, seu código do aplicativo deve manipular um sinal SIGTERM Quando o Code Engine é reduzido automaticamente, um sinal SIGTERM é enviado para seu aplicativo.

    O exemplo de código a seguir manipula uma mensagem SIGTERM porque ela fecha a conexão com o servidor HTTP que foi iniciado pelo aplicativo após o aplicativo receber um sinal de que a instância termina.

    const server = // start the HTTP server
    
    process.on('SIGTERM', () => {
      console.info('SIGTERM signal received.');
      server.close(() => {
        console.log('Http server closed.');
      });
    });
    
  • Revise os detalhes de suas instâncias de app para ajudar a solucionar problemas de seu app. Consulte Obtendo detalhes sobre as instâncias do app