Crear y desplegar un panel de analítica en tiempo real con Node.js, Redis y MongoDB
Construye un panel de análisis en vivo que rastrea clics, almacena tendencias históricas, y transmite eventos al navegador sobre WebSockets.
El Stack
- Node.js con Express y Socket.io
- MongoDB para eventos históricos
- Redis para contadores activos y pub/sub
- Entorno de ejecución de Adios con un proceso Node persistente
Por qué esta carga de trabajo necesita un proceso persistente
Las apps WebSocket necesitan un proceso que permanezca activo. Las funciones sin servidor pueden resultar incómodas para conexiones persistentes porque están diseñadas para solicitudes breves. En Adios, el servidor Node.js funciona como un entorno de ejecución persistente, mientras la plataforma gestiona enrutamiento, TLS, registros y conexiones a servicios gestionados.
1. Crear la aplicación
Pídele al agente de IA de Adios:
Build an Express and Socket.io analytics dashboard. Track click events, store
them in MongoDB, publish live counts through Redis, and show a realtime chart in
the browser. Add /healthz.
2. Añadir adios.yaml
name: realtime-analytics
region: de
replicas: 1
routable: true
build_cmd: npm ci
start_cmd: node server.js
runtime:
name: node@24
port: 3000
health_path: /healthz
memory_mb: 1024
env:
MONGODB_URI: secret://MONGODB_URI
REDIS_URL: secret://REDIS_URL
requires:
- mongo
- cache
Crea un recurso MongoDB llamado mongo y un recurso Redis llamado cache, o establece las dos URL como secretos si ya tienes servicios gestionados.
3. Desplegar
adios up
adios logs --runtime
4. Pruébalo
Abre el panel desde un portátil y un teléfono, navega por él y observa cómo ambos clientes reciben la misma transmisión en vivo. Después inspecciona los registros de ejecución y las filas de MongoDB para confirmar que la app maneja tanto los datos en vivo como los históricos.
Revisa la Ruta de despliegue de Node.js, el Comprobaciones de despliegue de Redis, y Comprobaciones de despliegue de MongoDB antes de adaptar este stack para analítica de producción.