Firebase y Cloud Functions: Creación y Gestión de Backend Avanzado

Clase 2 de 22Curso de Firebase 5: Cloud Functions

Resumen

Firebase y Cloud Functions te permiten crear un backend ágil, seguro y escalable sin montar servidores. Con integraciones nativas, disparadores por eventos y un modelo de pago por uso, puedes enfocarte en tu lógica de negocio y en mejorar la experiencia del usuario.

¿Qué es Firebase y por qué acelera tu backend?

Firebase es una plataforma sobre la infraestructura de Google que ofrece servicios listos para usar. Con alta escalabilidad y alta disponibilidad, tu app puede atender desde pocos hasta millones de usuarios sin caídas frecuentes. Además, integra SDK y APIs para Android, iOS y web.

  • Autenticación de usuarios lista para integrar.
  • Almacenamiento de datos y archivos con servicios gestionados.
  • Ejecución de lógica de negocio sin servidores propios.
  • Integración con Google Cloud y otros servicios de Firebase.

También facilita mejorar la calidad de tus apps: pruebas, rendimiento y errores en tiempo real. Y contribuye al crecimiento del negocio con analíticas y métricas para medir y potenciar el engagement.

¿Qué servicios mejoran calidad y crecimiento?

  • Testing para validar funcionalidades.
  • Monitoreo de rendimiento con métricas útiles.
  • Errores en tiempo real para actuar rápido.
  • Analíticas y engagement para tomar decisiones basadas en datos.

¿Qué son las Cloud Functions y cuándo usarlas?

Las Cloud Functions son código de backend donde vive tu lógica de negocio. Es la buena práctica: no implementes esta lógica en el frontend. Se alojan en Firebase (sobre Google Cloud) y te olvidas del mantenimiento de infraestructura.

  • Sin gestionar clústeres ni balanceadores de carga.
  • Escalan automáticamente con la demanda.
  • Aislamiento por función: memoria y CPU dedicadas. Si una falla, las demás siguen activas. Este patrón se asocia a microservicios.
  • Seguridad y privacidad elevadas.

¿Cómo se activan por eventos y triggers?

Se disparan por eventos de Firebase o Google Cloud: - Cambios en Firestore: insertar, actualizar o eliminar documentos activa una función. - Autenticación: creación de nuevos usuarios. - Hosting y Storage: despliegues o subida de archivos. - Analytics: eventos de uso. - Llamadas directas vía HTTP para exponer endpoints.

¿Qué ejemplos prácticos ilustran su uso?

  • Cálculo de una factura en el servidor.
  • Costo de un viaje tipo Uber en el backend.
  • Moderación de mensajes: al guardar un texto, una función valida y limpia contenido inapropiado y actualiza la base.
  • Redimensionado de imágenes: al subir una imagen, una función la comprime y guarda la versión optimizada en Storage.

¿Cuánto cuesta y qué proyecto aplicarás?

El modelo de precios arranca con un tramo free y luego pago por uso.

  • Gratis hasta 125 000 invocaciones por mes.
  • Gratis 40 000 segundos/mes de RAM y 40 000 segundos/mes de CPU.
  • Luego plan por uso: 0.4 centavos de dólar por millón de invocaciones.
  • 0.025 por cada 1000 segundos de RAM y 0.01 por cada 1000 segundos de CPU.
  • Salida de datos fuera de Google Cloud: 0.12 por GB transmitido.

¿Qué harás en el proyecto de video blog?

Trabajarás sobre un blog creado con Firebase para la web, con inicio de sesión por email y redes sociales, y creación de posts.

  • Validar que las imágenes sean apropiadas con Cloud Functions.
  • Enviar correos de bienvenida y de despedida.
  • Enviar los posts de la semana de forma automatizada.
  • Todo con Cloud Functions y sin tocar el cliente (Android, iOS o web).

Comparte en comentarios: ¿en qué casos usarías Firebase o las Cloud Functions para tu próxima funcionalidad?