Comparación de versiones de Cloud Functions

Hay dos versiones de Cloud Functions for Firebase:

  • Cloud Functions (2ª gen.), que implementa tus funciones como servicios en Cloud Run, lo que te permite activarlas con Eventarc y Pub/Sub.
  • Cloud Functions (1ª gen.), la versión original de las funciones con activadores de eventos y configurabilidad limitados.

Te recomendamos que elijas Cloud Functions (2ª gen.) para funciones nuevas siempre que sea posible. Sin embargo, planeamos seguir admitiendo Cloud Functions (1ª gen.).

En esta página, se describen las funciones que se incluyen en Cloud Functions y se proporciona una comparación entre las dos versiones del producto.

Cloud Functions (2ª gen.)

Cloud Functions es la oferta de funciones como servicio de Firebase de nueva generación. Cloud Functions (2ª gen.) se basa en Cloud Run y Eventarc, y ofrece una infraestructura mejorada y una cobertura de eventos más amplia en Cloud Functions, incluido lo siguiente:

  • Compiladas en Cloud Run: Las funciones se compilan con Cloud Build y se implementan como servicios de Cloud Run. Esto te permite personalizar tu función como lo harías con un servicio de Cloud Run. Consulta la documentación de Cloud Run para explorar opciones de configuración de tu servicio, como los límites de memoria, las variables de entorno, etcétera.
  • Tiempos de procesamiento de solicitudes más largos: Ejecuta cargas de trabajo de solicitudes más largas, como el procesamiento de grandes transmisiones de datos desde Cloud Storage o BigQuery.
  • Tamaños de instancias más grandes: Ejecuta cargas de trabajo en memoria, de procesamiento intensivo y paralelas más grandes.
  • Simultaneidad mejorada: Controla varias solicitudes simultáneas con una sola instancia de función para minimizar los inicios en frío y mejorar la latencia.
  • Administración del tráfico: Divide el tráfico entre diferentes revisiones de funciones o revierte una función a una versión anterior.
  • Integración de Eventarc: Compatibilidad nativa para activadores de Eventarc, con más de 90 fuentes de eventos compatibles con Eventarc en Cloud Functions.
  • Mayor compatibilidad con CloudEvents: Compatibilidad con CloudEvents estándar de la industria en todos los entornos de ejecución de lenguajes, lo que proporciona una experiencia coherente para desarrolladores.

Consulta la tabla comparativa para obtener más detalles.

Debido a que Cloud Functions implementa funciones como servicios en Cloud Run, Cloud Functions comparte cuotas y límites de recursos con Cloud Run. Ver las cuotas

Tabla de comparación

Función Cloud Functions (1ª gen.) Cloud Functions
Registro de imágenes Container Registry o Artifact Registry Solo Artifact Registry
Tiempo de espera de la solicitud Hasta 9 minutos
  • Hasta 60 minutos para las funciones activadas por HTTP
  • Hasta 9 minutos para las funciones activadas por eventos
Tamaño de la instancia Hasta 8 GB de RAM con 2 CPU virtuales Hasta 16 GiB de RAM con 4 CPU virtuales
Simultaneidad 1 solicitud simultánea por instancia de función Hasta 1,000 solicitudes simultáneas por instancia de función

Precios

Para obtener información sobre los precios, consulta los planes de precios de Firebase.

Si usas Cloud Functions, puedes ver los costos asociados solo con Cloud Functions de la siguiente manera:

  1. Ve a la página Informes de Cloud Billing en la consola de Google Cloud.
  2. Si se te solicita, selecciona la cuenta de facturación asociada con tu proyecto de Google Cloud.
  3. En el panel Filtros, en Etiquetas, agrega un filtro de etiquetas con la clave goog-managed-by y el valor cloudfunctions.

Limitaciones

Cloud Functions for Firebase (2ª gen.) no proporciona compatibilidad con los eventos de Analytics.

Aunque Cloud Functions for Firebase (2ª gen.) admite eventos de bloqueo de autenticación, no es compatible con el mismo conjunto de eventos Authentication básicos de la 1ª gen.

Sin embargo, debido a que las funciones de 1ª y 2ª gen. pueden coexistir en el mismo archivo fuente, puedes desarrollar y, también, implementar Analytics y activadores de Authentication básicos en 1ª gen. junto con funciones de 2ª gen.