El tiempo de espera de la función de configuración de manera diferente para varias funciones dentro de la misma aplicación depende de la plataforma en la nube que esté utilizando:
- AWS Lambda: en AWS Lambda, puede configurar el tiempo de espera para cada función individualmente. Esto se hace accediendo a la consola Lambda, seleccionando la función específica y ajustando la configuración de tiempo de espera en la pestaña Configuración. El tiempo de espera se puede establecer entre 1 y 900 segundos (15 minutos) para cada función de forma independiente [1].
- Funciones de Azure: para las funciones de Azure, la propiedad `FuncionTimeOut` en el archivo` host.json` se aplica globalmente a todas las funciones dentro de una aplicación. Sin embargo, puede establecer diferentes tiempos de espera para diferentes funciones mediante el uso de aplicaciones de funciones separadas o implementando una lógica personalizada dentro de sus funciones para manejar los tiempos de espera programamáticamente. El `FuncionTimeOut` se puede configurar hasta 10 minutos para el alojamiento del plan de consumo y es ilimitado para planes premium y dedicados [3] [7].
-Google Cloud Functions: en Google Cloud, puede establecer la duración del tiempo de espera para cada función individualmente durante la implementación utilizando el indicador `timeOut` con el comando` GcLoud Functions Implement`. Esto le permite configurar diferentes tiempos de espera para diferentes funciones dentro del mismo proyecto [5].
- Script de aplicaciones: para el script de Google Apps, el tiempo de ejecución máximo se soluciona en 6 minutos para la versión gratuita, y no hay opción para establecer diferentes tiempos de espera para diferentes scripts. Sin embargo, puede dividir el procesamiento en múltiples scripts para evitar tiempos de espera [2].
En resumen, si bien algunas plataformas como AWS Lambda y Google Cloud Functions permiten establecer diferentes tiempos de espera para cada función, otras como las funciones de Azure aplican una configuración global de tiempo de espera a menos que se implementa la lógica personalizada.
Citas:
[1] https://docs.aws.amazon.com/lambda/latest/dg/configuration timeout.html
[2] https://www.googlecloudcommunity.com/gc/appsheet-q-a/bot-executes-script-trigger-twice-due-to timeout/m-p/598297
[3] https://build5nines.com/azure-functions-extend-execution timeout-past-5-minutes/
[4] https://developer.mozilla.org/en-us/docs/web/api/window/settimeut
[5] https://cloud.google.com/functions/docs/configuring/timeout
[6] https://stackoverflow.com/questions/315078/how-do-you-handle-multiple-instances-of-setTimeut
[7] https://github.com/microsoftdocs/azure-docs/blob/main/includes/functionstimeout-duration.md
[8] https://learn.microsoft.com/en-us/azure/azure-functions/functions-scale