Cuotas y límites

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.

Las funciones en segundo plano tienen límites adicionales, como se explica a continuación. Estos límites no se aplican a las funciones HTTP de primera generación.

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 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 .