es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Node.js en App Engine de GCP se reinicia cada 15 minutos con una instancia B1.

Actualmente tengo un bot de Slack funcionando en una instancia B1 de Google App Engine con escalado manual e instancias establecidas en 1.

He leído otros informes de personas que han experimentado reinicios de sus instancias y mencionan el tipo de escalado o crean una especie de función “mantén activo” que solicitará una URL de la aplicación cada minuto más o menos. Yo he estado utilizando manual_scaling, que según lo que he leído intentará mantener la aplicación en ejecución indefinidamente, pero estoy viendo reinicios regulares (cada 15 minutos).

app.yaml

runtime: nodejs16 # o cualquier otra versión compatible

instance_class: B1

manual_scaling:
  instances: 1

env_variables:
  SLACK_BOT_TOKEN: "tokenaquí"

¿Hay alguna configuración o ajuste que me esté perdiendo y que esté causando estos reinicios frecuentes?

Imagen: Enlace de la imagen

Edit:

Funcionó después de 3 horas de eliminar la configuración adicional del app.yaml mientras hacía la pregunta. Parece que la configuración adicional que tenía en mi app.yaml estaba anulando el comportamiento predeterminado de manual_scaling en la instancia B1. Cuando eliminé el código YAML mostrado a continuación, la instancia se mantuvo activa durante 3 horas antes de reiniciarse nuevamente cada 10-15 minutos.

Código eliminado de app.yaml

handlers:
- url: /stylesheets
  static_dir: stylesheets

- url: /.*
  secure: always
  redirect_http_response_code: 301
  script: auto

Imagen: Enlace de la imagen

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Según la información proporcionada y la edición realizada, parece que el problema de los reinicios frecuentes fue causado por un código YAML adicional en el archivo app.yaml. Al eliminar este código, se permitió que la instancia se mantuviera activa durante 3 horas antes de reiniciarse nuevamente cada 10-15 minutos.

    Es importante tener en cuenta que manual_scaling debería intentar mantener la aplicación en funcionamiento indefinidamente, pero puede haber otros factores involucrados en los reinicios. Una recomendación mencionada en otros informes es crear una función de “mantenimiento activo” que solicite una URL de la aplicación cada minuto aproximadamente para evitar que la instancia se vuelva inactiva.

    También puede valer la pena considerar un tipo de escalado diferente, como el escalado automático, que puede ajustar dinámicamente el número de instancias según el tráfico. Sin embargo, esto puede tener consideraciones de costos y tal vez no sea necesario dependiendo del tráfico esperado para el bot de Slack.

Comments are closed.