Modelo para proporcionar almacenamiento en la nube.
Backend como servicio ( BaaS ), a veces también denominado backend móvil como servicio ( MBaaS ), [1] [2] [3] es un servicio para proporcionar a los desarrolladores de aplicaciones web y móviles una forma de crear fácilmente un backend. a sus aplicaciones frontend . Las funciones disponibles incluyen gestión de usuarios, notificaciones automáticas e integración con servicios de redes sociales . [4] Estos servicios se proporcionan mediante el uso de kits de desarrollo de software (SDK) personalizados e interfaces de programación de aplicaciones (API). BaaS es un desarrollo relativamente reciente en la computación en la nube, [5] y la mayoría de las nuevas empresas de BaaS datan de 2011 o después. [6] [7] [8] Algunos de los proveedores de servicios más populares son AWS Amplify y Firebase .
Objetivo
Las aplicaciones web y móviles requieren un conjunto similar de funciones en el backend, incluido el servicio de notificaciones , la integración con redes sociales y el almacenamiento en la nube . [9] [10] Cada uno de estos servicios tiene su propia API que debe incorporarse individualmente a una aplicación, un proceso que puede llevar mucho tiempo y ser complicado para los desarrolladores de aplicaciones. [11] Los proveedores de BaaS forman un puente entre el frontend de una aplicación y varios backends basados en la nube a través de una API y un SDK unificados . [3]
Proporcionar una manera consistente de administrar los datos backend significa que los desarrolladores no necesitan volver a desarrollar su propio backend para cada uno de los servicios a los que sus aplicaciones necesitan acceder, [10] ahorrando potencialmente tiempo y dinero. [11] [12]
Aunque es similar a otros modelos de negocio de computación en la nube, como la computación sin servidor , el software como servicio (SaaS), la infraestructura como servicio (IaaS) y la plataforma como servicio (PaaS), BaaS se diferencia de estos otros servicios en que aborda específicamente las necesidades de computación en la nube de los desarrolladores de aplicaciones web y móviles al proporcionar un medio unificado para conectar sus aplicaciones a los servicios en la nube. [13]
Características
Los proveedores de BaaS ofrecen diferentes conjuntos de funciones y herramientas de backend. [14] Algunas de las características más comunes incluyen:
- Gestión de base de datos . La mayoría de las soluciones BaaS brindan servicios de administración de bases de datos SQL y/o NoSQL para aplicaciones. [15] Los desarrolladores pueden almacenar los datos de sus aplicaciones sin implementar ni administrar bases de datos ellos mismos. BaaS generalmente proporciona SDK de cliente , API REST y GraphQL para que la interfaz interactúe con las bases de datos.
- Almacenamiento de archivos . Los proveedores de BaaS suelen ofrecer soluciones de almacenamiento para archivos multimedia, cargas de usuarios y otros datos binarios. Las aplicaciones pueden cargar, descargar y eliminar archivos a través de los SDK y API proporcionados .
- Autenticacion y autorizacion . Algunos BaaS ofrecen servicios de autenticación y autorización que permiten a los desarrolladores administrar fácilmente los usuarios de las aplicaciones. [15] Esto incluye el registro de usuarios, el inicio de sesión, el restablecimiento de contraseña, la integración del inicio de sesión en redes sociales a través de OAuth , la gestión de permisos y grupos de usuarios, etc.
- Servicio de notificaciones . Algunos proveedores de BaaS, como Firebase y AWS Amplify, tienen servicios de notificación que pueden enviar correos electrónicos personalizados a los usuarios y enviar notificaciones nativas en plataformas móviles. [16] [17] Esto es especialmente útil para aplicaciones que necesitan enviar mensajes, alertas y recordatorios.
- Funciones de la nube . Algunos BaaS permiten a los desarrolladores implementar y ejecutar funciones sin servidor . Las funciones suelen ser sin estado y pueden activarse de varias maneras, incluidas solicitudes HTTP , invocación de SDK, eventos del servidor en segundo plano y ejecuciones programadas en la nube. [18] [19] Diferentes proveedores ofrecen soporte de tiempo de ejecución para diferentes lenguajes, algunos de los lenguajes populares son JavaScript / TypeScript ( Node.js , Deno ), Python , Java / Kotlin . [18] [19] [20] Las funciones en la nube amplían el potencial y la flexibilidad de BaaS al permitir a los desarrolladores escribir funcionalidades personalizadas para sus aplicaciones, trabajando de manera similar a un marco de backend de API REST tradicional . [21]
- Analítica de uso . Los datos analíticos sobre el uso de aplicaciones a menudo se incluyen en BaaS. Esto permite a los desarrolladores monitorear el comportamiento de los usuarios y tomar decisiones en consecuencia en estrategias de marketing y optimizaciones del rendimiento. [22] [23]
- Diseño de interfaz de usuario . Algunos proveedores de BaaS, como AWS Amplify y Backendless, ofrecen herramientas de diseño de interfaces de usuario que ayudan a los desarrolladores a diseñar la interfaz de usuario de aplicaciones web y móviles. [24] [25] Si bien esto puede ser útil para equipos pequeños y desarrolladores individuales, la asistencia en el diseño de la interfaz de usuario puede no ser convencional en BaaS, ya que va más allá del alcance de la infraestructura backend.
- Otros . Los diferentes proveedores de BaaS tienen sus ofertas de funciones únicas. Por mencionar algunas, Firebase admite extensiones preempaquetadas para proporcionar funciones e integraciones con otras plataformas. [26] Appwrite tiene servicios de localización y avatar para administrar íconos y ubicaciones de usuarios. [27] [28] Back4App ofrece agentes de IA autónomos para ayudar con DevOps . [29]
Proveedores de servicio
Los proveedores de BaaS tienen un enfoque amplio y proporcionan SDK y API que funcionan para el desarrollo de aplicaciones en múltiples plataformas con diferentes pilas de tecnología, como JavaScript (para aplicaciones web), Flutter , Java / Kotlin (para aplicaciones de Android ), Swift / Objetive-C ( para aplicaciones iOS / MacOS / WatchOS / TvOS ), .NET (para Windows ) y otros. Los proveedores de BaaS también vienen en diferentes tipos, adaptándose a las diferentes necesidades de los desarrolladores.
BaaS basado en la nube
La mayoría de los proveedores de BaaS alojan plataformas backend en sus servidores en la nube. [30] También gestionan la infraestructura, la seguridad y la escalabilidad de las plataformas. Los desarrolladores pueden acceder a los servicios backend a través de una interfaz web o las API proporcionadas . [15] Algunos ejemplos de BaaS basado en la nube incluyen Firebase (alojado en Google Cloud Platform ), AWS Amplify (alojado en Amazon Web Services ) y Microsoft Azure Mobile Apps (alojado en Microsoft Azure ).
BaaS autohospedado
BaaS autohospedado permite a los desarrolladores alojar backend en sus propios servidores, lo que proporciona más flexibilidad y potencial de personalización en comparación con BaaS basado en la nube, desde el cual a menudo es más difícil migrar. Sin embargo, los desarrolladores también son responsables de gestionar la infraestructura, la seguridad y la escalabilidad de sus servidores. [15] [30] Algunos de los BaaS autohospedados son de código abierto . Supabase, por ejemplo, se presenta como "la alternativa de código abierto a Firebase ", [31] enfatizando su flexibilidad y apertura como un proyecto apoyado por la comunidad en comparación con Firebase . Si bien es de código abierto y admite alojamiento propio, Supabase y algunos otros proveedores como Appwrite y Strapi también ofrecen servicios de alojamiento pagos basados en la nube.
BaaS móvil
El backend móvil como servicio (MBaaS) es un tipo de BaaS específicamente para aplicaciones implementadas en sistemas móviles . Si bien algunas referencias usan MBaaS indistintamente para BaaS, BaaS puede tener una variedad más amplia de soporte, como aplicaciones web y aplicaciones de escritorio. [32] [33] Algunos ejemplos de MBaaS son las aplicaciones móviles Backendless y Microsoft Azure .
modelo de negocio
Los proveedores de BaaS generan ingresos a partir de sus servicios de diversas formas, a menudo utilizando un modelo freemium . Según este modelo, un cliente recibe una cierta cantidad de usuarios activos gratuitos o llamadas API por mes y paga una tarifa por cada usuario o llamada que supere este límite. Alternativamente, los clientes pueden pagar una tarifa fija por un paquete que permite una mayor cantidad de llamadas o usuarios activos por mes. [10] También existen planes de tarifa fija que hacen que los precios sean más predecibles. Algunos de los proveedores ofrecen llamadas API ilimitadas dentro de sus ofertas de planes gratuitos. [34] Otro modelo de negocio que han utilizado muchos proveedores de BaaS es el PAYG (pago por uso), [35] que tiene un costo flexible basado en el uso de la base de datos, el almacenamiento, el ancho de banda, las llamadas a funciones y los números de usuario por parte de los desarrolladores. etc.
Ver también
Referencias
- ^ Monroe, Martín. "El evangelio de MBaaS (Parte 1 de 2)". InfoQ . Consultado el 6 de mayo de 2013 .
- ^ Monroe, Martín. "El evangelio de MBaaS (Parte 2)". InfoQ . Consultado el 15 de mayo de 2013 .
- ^ ab Lane, Kin (3 de junio de 2012). "Auge de las pilas de API de backend móvil como servicio (MBaaS)". Evangelista API . Consultado el 16 de octubre de 2012 .
- ^ Carney, Michael. "AnyPresence se asocia con Heroku para reforzar su oferta empresarial de mBaaS". PandoDiario . Archivado desde el original el 27 de junio de 2013 . Consultado el 24 de junio de 2013 .
- ^ Williams, Alex (11 de octubre de 2012). "Kii Cloud abre puertas a una plataforma de desarrollo móvil con 25 millones de usuarios finales". TechCrunch . Consultado el 16 de octubre de 2012 .
- ^ Tan, Aaron (30 de septiembre de 2012). "FatFractal sube la apuesta en el mercado de backend como servicio". Techgoondu.com . Consultado el 16 de octubre de 2012 .
- ^ Rowinski, Dan (9 de noviembre de 2011). "Mobile Backend As A Service Parse recauda 5,5 millones de dólares en financiación Serie A". Leer escribir . Consultado el 23 de octubre de 2012 .
- ^ Mishra, Pankaj (7 de enero de 2014). "MobStac recauda 2 millones de dólares en la Serie B para ayudar a las marcas a aprovechar el comercio móvil". TechCrunch . Consultado el 22 de mayo de 2014 .
- ^ Carril, pariente. "Nuevas funciones del proveedor de BaaS AnyPresence". Evangelista API . Consultado el 28 de mayo de 2013 .
- ^ abc Lawler, Ryan (26 de marzo de 2012). "Parse ofrece su backend móvil como servicio en un modelo freemium". GigaOM . Archivado desde el original el 9 de octubre de 2012 . Consultado el 16 de octubre de 2012 .
- ^ ab Williams, Alex (11 de julio de 2012). "Kinvey recauda 5 millones de dólares para el backend como servicio de aplicaciones web y móviles". TechCrunch . Consultado el 16 de octubre de 2012 .
- ^ Facemire, Michael (2 de septiembre de 2012). "Movilidad empresarial: ¿a qué velocidad puede avanzar el desarrollo?". Blog de Michael Facemire . Forrester.com . Consultado el 16 de octubre de 2012 .
- ^ Rowinski, Dan (17 de abril de 2012). "El auge de los servicios móviles en la nube: las empresas emergentes de BaaS crecen". Leer escribir . Consultado el 23 de octubre de 2012 .
- ^ Carril, pariente. "Nuevas funciones del proveedor de BaaS AnyPresence". Evangelista API . Consultado el 28 de mayo de 2013 .
- ^ abcd Zomko, romano. "La breve guía de backend como servicio (BaaS)". impresit.io . Consultado el 23 de noviembre de 2023 .
- ^ "Mensajería en la nube de Firebase". Base de fuego . Consultado el 24 de noviembre de 2023 .
- ^ "Notificaciones: alojamiento de AWS Amplify". docs.aws.amazon.com . Consultado el 24 de noviembre de 2023 .
- ^ ab "Funciones en la nube para Firebase". Base de fuego . Consultado el 24 de noviembre de 2023 .
- ^ ab "Funciones - Documentos - Appwrite". Appwrite . Consultado el 24 de noviembre de 2023 .
- ^ "Funciones perimetrales | Documentos de Supabase". Supabase . Consultado el 24 de noviembre de 2023 .
- ^ Ail, Vijit (15 de junio de 2022). "Uso de funciones perimetrales en Supabase: una guía completa". Blog de LogRocket . Consultado el 24 de noviembre de 2023 .
- ^ Rowinski, Dan (17 de abril de 2012). "El auge de los servicios móviles en la nube: las empresas emergentes de BaaS crecen". Leer escribir . Consultado el 23 de octubre de 2012 .
- ^ "Google Analytics para Firebase". Base de fuego . Consultado el 24 de noviembre de 2023 .
- ^ "Editor de aplicaciones web de pila completa - Creador de aplicaciones extensible - AWS Amplify Studio - AWS". Servicios web de Amazon, Inc. Consultado el 24 de noviembre de 2023 .
- ^ "Constructor de interfaz de usuario". Sin fin . Consultado el 24 de noviembre de 2023 .
- ^ "Extensiones de Firebase". Base de fuego . Consultado el 24 de noviembre de 2023 .
- ^ "Referencia de la API de Avatares - Documentos - Appwrite". Appwrite . Consultado el 24 de noviembre de 2023 .
- ^ "Referencia de API local - Documentos - Appwrite". Appwrite . Consultado el 24 de noviembre de 2023 .
- ^ "Agente de Back4App". Back4App . Consultado el 24 de noviembre de 2023 .
- ^ ab "Cómo elegir el proveedor de backend como servicio (BaaS) adecuado para su proyecto". Comunidad DEV . 13 de septiembre de 2023 . Consultado el 23 de noviembre de 2023 .
- ^ "Supabase | La alternativa de código abierto a Firebase". Supabase . Consultado el 24 de noviembre de 2023 .
- ^ "¿Qué es BaaS? | Backend como servicio versus sin servidor". Llamarada de nube . Consultado el 23 de noviembre de 2023 .
- ^ "¿Qué es el backend móvil como servicio (MBaaS)? (2022)". Sin fin . 20 de enero de 2023 . Consultado el 23 de noviembre de 2023 .
- ^ "MongoDB Stitch: backend como servicio". MongoDB . Consultado el 21 de junio de 2017 .
- ^ "¿Qué es un servicio backend móvil (MBAAS)?". Blog de Carina Softlabs . 12 de mayo de 2021. págs. 1-2. Archivado desde el original el 16 de mayo de 2024 . Consultado el 12 de mayo de 2021 .