Esta página detalla los límites escalables basados en el uso para Cloud Functions según el plan de precios de pago por uso de Blaze. Estos límites se aplican a los proyectos de Firebase que implementan funciones en el entorno de ejecución de Node.js 10.
El plan Blaze proporciona generosas cantidades de invocaciones, tiempo de cálculo y tráfico de Internet de forma gratuita. Sin embargo, las implementaciones de funciones generan cargos a pequeña escala por el espacio de almacenamiento utilizado para el contenedor de la función. Consulte las preguntas frecuentes de Firebase para obtener más información.
Las cuotas de Google Cloud Functions abarcan 3 áreas:
Límites de recursos
Estos afectan la cantidad total de recursos que sus funciones pueden consumir.
Límites de tiempo
Estos afectan la duración de las cosas.
Límites de tarifas
Estos afectan la velocidad a la que puede llamar a la API de Cloud Functions para administrar sus funciones.
Los diferentes tipos de límites se describen con más detalle a continuación. Las diferencias entre los límites de Cloud Functions (1.ª generación) y Cloud Functions (2.ª generación) se indican cuando corresponde.
Límites de recursos
Los límites de recursos afectan la cantidad total de recursos que pueden consumir sus funciones. El alcance regional es por proyecto, y cada proyecto mantiene sus propios límites.
Cuota | Descripción | Límite (1.ª generación) | Límite (segunda generación) | Se puede aumentar | Alcance |
---|---|---|---|---|---|
Número de funciones | El número total de funciones que se pueden implementar por región. | 1.000 | 1000 menos la cantidad de servicios Cloud Run implementados | No | por región |
Tamaño máximo de implementación | El tamaño máximo de una implementación de función única. | 100 MB (comprimidos) para fuentes. 500 MB (sin comprimir) para fuentes más módulos. | N / A | No | por función |
Tamaño máximo de solicitud HTTP sin comprimir | Datos enviados a funciones HTTP en una solicitud HTTP | 10MB | 32MB | No | por invocación |
Tamaño máximo de respuesta HTTP sin comprimir | Datos enviados desde funciones HTTP en una respuesta HTTP | 10MB | 10 MB para transmisión de respuestas. 32 MB para respuestas que no son de transmisión. | No | por invocación |
Tamaño máximo de evento para funciones controladas por eventos | Datos enviados en eventos a funciones en segundo plano. | 10MB | 512 KB para eventos de Eventarc. 10 MB para eventos heredados. | No | por evento |
Memoria de función máxima | Cantidad de memoria que cada instancia de función puede usar | 8GB | 32GB | No | por función |
Límites de tiempo
Cuota | Descripción | Límite (1.ª generación) | Límite (segunda generación) | Se puede aumentar | Alcance |
---|---|---|---|---|---|
Duración máxima de la función | La cantidad máxima de tiempo que una función puede ejecutarse antes de ser terminada por la fuerza | 540 segundos | 60 minutos para funciones HTTP. 9 minutos para funciones basadas en eventos. | No | por invocación |
Límites de tarifas
Cuota | Descripción | Límite (1.ª generación) | Límite (segunda generación) | Se puede aumentar | Alcance |
---|---|---|---|---|---|
Llamadas API (LEER) | Llamadas para describir o enumerar funciones a través de la API de Cloud Functions | 5000 por 100 segundos | 1200 por 60 segundos | Sólo para 1ra generación | por proyecto (1.ª generación) por región (2.ª generación) |
Llamadas API (ESCRIBIR) | Llamadas para implementar o eliminar funciones a través de la API de Cloud Functions | 80 por 100 segundos | 60 por 60 segundos | número 1 | por proyecto (1.ª generación) por región (2.ª generación) |
Llamadas API (LLAMADA) | Llamadas a la API "llamar" | 16 por 100 segundos | N / A | número 2 | por proyecto |
Escalabilidad
Las funciones en la nube invocadas por HTTP escalan rápidamente para manejar el tráfico entrante, mientras que las funciones en segundo plano escalan de manera más gradual. La capacidad de una función para ampliarse está dictada por algunos factores, entre ellos:
- La cantidad de tiempo que tarda en completarse la ejecución de una función (las funciones de ejecución corta generalmente pueden ampliarse para manejar más solicitudes simultáneas).
- La cantidad de tiempo que tarda una función en inicializarse en un arranque en frío .
- La tasa de error de su función.
Factores transitorios, como la carga regional y la capacidad del centro de datos.
Cuotas adicionales para funciones en segundo plano
Cuota | Descripción | Límite | Se puede aumentar | Alcance | Version del producto |
---|---|---|---|---|---|
Máximo de invocaciones simultáneas | El máximo de invocaciones simultáneas de una sola función. Ejemplo: si el manejo de cada evento toma 100 segundos, la tasa de invocación se limitará a 30 por segundo en promedio | 3.000 | Sí | por función | Solo 1ra generación |
Tasa máxima de invocación | La tasa máxima de eventos manejados por una sola función. Ejemplo: si el manejo de un evento toma 100 ms, la tasa de invocación se limitará a 1000 por segundo incluso si solo se manejan 100 solicitudes, en promedio, en paralelo. | 1000 por segundo | No | por función | Solo 1ra generación |
Tamaño máximo de datos de eventos simultáneos | El tamaño total máximo de eventos entrantes para invocaciones simultáneas de una sola función. Ejemplo: si los eventos tienen un tamaño de 1 MB y su procesamiento demora 10 segundos, la velocidad promedio será de 1 evento por segundo, porque el undécimo evento no se procesará hasta que finalice el procesamiento de uno de los primeros 10 eventos. | 10MB | No | por función | 1.ª generación y 2.ª generación |
Rendimiento máximo de eventos entrantes | El rendimiento máximo de eventos entrantes a una sola función. Ejemplo: si los eventos tienen un tamaño de 1 MB, entonces la velocidad de invocación puede ser de un máximo de 10 por segundo, incluso si las funciones finalizan en 100 ms. | 10 MB por segundo | No | por función | 1.ª generación y 2.ª generación |
Cuando alcanzas un límite de cuota
Cuando una función consume todo un recurso asignado, el recurso deja de estar disponible hasta que se actualiza o aumenta la cuota. Esto puede significar que su función y todas las demás funciones en el mismo proyecto no funcionarán hasta entonces. Una función devuelve un código de error HTTP 500 cuando uno de los recursos supera la cuota y la función no se puede ejecutar.
Para aumentar las cuotas por encima de los valores predeterminados enumerados aquí, vaya a la página de cuotas de Cloud Functions , seleccione las cuotas que desea modificar, haga clic en EDITAR CUOTAS , proporcione su información de usuario si se le solicita e ingrese el nuevo límite de cuota para cada cuota que seleccionó.
Límites de cuota para la implementación de Firebase CLI
Para cada función que implementa Firebase CLI, estos tipos de límites de velocidad y tiempo se ven afectados:
- Llamadas API (LEER): 1 llamada por implementación, sin importar cuántas funciones
- Límite: 5000 por 100 segundos
- Llamadas API (ESCRIBIR): 1 llamada por función
- Límite: 80 por 100 segundos
Consulte también la referencia de Firebase CLI .