Tiempo de espera de la función

El tiempo de ejecución de la función está limitado por la duración del tiempo de espera, que puedes especificar cuando implementas una función. Según la configuración predeterminada, una función agota el tiempo de espera después de un minuto (60 segundos), pero puedes extender este período:

  • En Cloud Functions (1st gen), la duración máxima del tiempo de espera es de nueve minutos (540 segundos).
  • En Cloud Functions (2nd gen), la duración máxima del tiempo de espera es de 60 minutos (3,600 segundos) para las funciones de HTTP y 9 minutos (540 segundos) para las funciones controladas por eventos.

Cuando la ejecución de la función excede el tiempo de espera, se muestra inmediatamente un estado de error a la persona que llama. Los recursos de CPU utilizados por la instancia de la función que agotó el tiempo de espera se limitan y el procesamiento de la solicitud se detiene de inmediato.

En algunas circunstancias, el trabajo en pausa puede continuar en segundo plano o reanudarse con una solicitud posterior, lo que puede causar efectos secundarios inesperados. Un síntoma común de este comportamiento es la apariencia de que el trabajo y los registros de una solicitud se “filtran” a una solicitud posterior. Debido a que no puedes depender de que se reanude el trabajo en pausa, no debes confiar en este comportamiento. En su lugar, tu función debe evitar los tiempos de espera mediante una combinación de las siguientes técnicas:

  1. Establece un tiempo de espera superior al tiempo de ejecución esperado de la función.
  2. Realiza un seguimiento de la cantidad de tiempo restante durante la ejecución y realiza la limpieza o la salida antes.

Establece una duración para el tiempo de espera

Puedes configurar el tiempo de espera de una función durante la implementación mediante la CLI de Google Cloud o la consola de Google Cloud.

gcloud

Si realizas la implementación con la CLI de gcloud, usa la marca --timeout:

gcloud functions deploy YOUR_FUNCTION_NAME --timeout=TIMEOUT_DURATION ...

Para editar un tiempo de espera existente con Google Cloud CLI, simplemente vuelve a implementar la función con un nuevo valor de tiempo de espera.

Consola

Para configurar la duración del tiempo de espera durante la creación de la función en la consola de Google Cloud, sigue estos pasos:

  1. Ve a la página Descripción general de Cloud Functions en la consola de Google Cloud.
  2. Haga clic en Crear función.
  3. Completa los campos obligatorios de la función.
  4. Expande la sección Entorno de ejecución, compilación... al final de la página y haz clic en la pestaña Entorno de ejecución.
  5. En el campo Tiempo de espera, ingresa la cantidad de segundos.

    Para editar un tiempo de espera de espera existente en la consola de Google Cloud, en la página de descripción general de las funciones, haz clic en el nombre de la función deseada para ir a su página de detalles. En la página de detalles, haz clic en Editar, expande la sección Entorno de ejecución, compilación… y haz clic en la pestaña Entorno de ejecución, en la que puedes editar directamente el valor en el campo Tiempo de espera.