Introducción a MongoDB Stitch, la plataforma BaaS de MongoDB

Dentro de los modelos de servicio Cloud, primero llegó Infrastructure as a service (IaaS). Así pudimos desplegar MongoDB en una infraestructura completa (AWS, GCP, Microsoft Azure, …) y crear nuestro propio centro de datos. Este es el tipo de cloud que permite mayor control, eso sí, a costa de una mayor complejidad.

Más tarde Platform as a service (PaaS) nos permitía desplegar nuestro MongoDB en PODs de OPENSHIFT. PaaS nos da acceso a un entorno de ejecución para nuestras aplicaciones y nos proporciona servicios para el desarrollo, testing y hosting de aplicaciones.

Luego con Software as a service (SaaS) tuvimos acceso web a software finalizado. En SaaS la complejidad de la infraestructura queda oculta al usuario y además nos facilita integración mediante APIs.

Diferencias de gestión (manager/vendor) en On-premises y Cloud: IaaS, PaaS y SaaS
Diferencias en la gestión de soluciones On-Premises y Cloud

 

Después llegó MongoDB Atlas, que pertenece al subtipo Database as a service (DaaS) y nos ofrece una cómoda abstracción sobre la que poder desarrollar.

Y en junio de 2017, Mongo lanzó Stitch, una nueva herramienta Backend as a service (BaaS) pensada para desarrollar en JS (en navegador o en Node), Java (Android) o Swift (iOS).

Vamos a ver cómo funciona MongoDB Stitch con este ejemplo: https://www.kenwalger.com/stitch/glucose.html

Antes de comenzar a programar, tendremos que realizar unos simples pasos de configuración:

1. Seleccionar Stitch Apps en el menú del proyecto

2. Crear una nueva aplicación

3. Activar autenticación

4. Filtros

5. Field rules

 

Y ya estamos listos para picar el código:

const client = new stitch.StitchClient('glucose-cqkgh');
const db = client.service('mongodb', 'mongodb-atlas').db('glucose');

function displayCommentsOnLoad() {
	client.login().then(displayComments);
}

function displayComments() {
	db.collection('results').find({}).then(docs => {
		var html = docs.map(c => "
” + c.comment + “

“).join(“”); document.getElementById(“comments”).innerHTML = html; }); } function addComment() { var foo = document.getElementById(“new_comment”); db.collection(“results”).insert({owner_id : client.authedId(), comment: foo.value}).then(displayComments); foo.value = “”; }

 

Aunque Stitch está un poco verde y no sabemos si acabará cuajando, no deja de ser interesante poder contar con una herramienta más que pueda servir de inspiración o punto de partida para otros proyectos bajo la fantástica transparencia del BaaS.

¿Te pareció interesante? Compártelo:
Share on Facebook
Facebook
Share on Google+
Google+
Tweet about this on Twitter
Twitter
Share on LinkedIn
Linkedin
Print this page
Print
Email this to someone
email

Sobre el Autor:

Ingeniero Informático que desarrolla su actividad profesional como Arquitecto Software.