Datos en Meteor
El flujo de datos entre cliente y servidor en una aplicación de Meteor se realiza sobre el protoclo DDP.
DDP
Meteor utiliza un protocolo para comunicar el servidor con el cliente conocido como DDP(Distributed Data Protocol)
Utiliza el patrón de publicación-subscripcion
Es un protocolo muy simple y minimalista, basado en JSON, la capa de transporte que utiliza Meteor es WebSockets y SocktJS, el cual es una emulación de WebSockets cuando no se encuentrán disponibles.
Existen muchos clientes que implementan este protocolo para comunicarse con aplicaciones Meteor e igualmente es muy sencillo crear un cliente que lo implemente.
Aquí tenemos una lista de diferentes clientes DDP
Base de datos
Meteor viene con MongoDB incorporado, podremos acceder a la base de datos directamente a través de las colecciones de Meteor. En el cliente tendremos una copia de de la base de datos a través de MiniMongo lo que algunos consideran una base de datos en el cliente, seria mas apropiado tratar a MiniMongo como un sistema de cache muy sofisticado
Gracias a Apollo podemos utilizar cualquier base de datos de forma reactiva y no estar limitados a MongoDB
Publicaciones y Suscripciones
En una aplicación seria en producción deberemos definir que partes de la base de datos queremos exponer en el cliente gracias al sistema de publicaciones y suscripciones. El tiempo real tiene un coste en recursos y para minimizar ese coste y hacer nuestra aplicación eficiente deberemos publicar y suscribirnos solo a la mínima cantidad de datos necesarios.