JavaScript (Node.js) y microservicios: del monolito a la arquitectura distribuida
JavaScript (Node.js) y microservicios: del monolito a la arquitectura distribuida
Resumen:
Este libro es una guía práctica completa para la transición de una aplicación monolítica a una arquitectura de microservicios flexible y escalable utilizando JavaScript (Node.js). El autor, Alexéi Voronov, desarrollador senior con 10 años de experiencia, comparte casos reales y patrones probados que te ayudarán a evitar errores típicos al comenzar.
¿De qué trata este libro?
El libro está estructurado como un proyecto transversal: comenzarás con una simple API REST monolítica en Express y, paso a paso, la transformarás en un sistema de varios servicios independientes. Cada capítulo está dedicado a un aspecto diferente del desarrollo de microservicios:
- Diseño de microservicios: límites de contexto, comunicación síncrona y asíncrona, selección de protocolos (HTTP/gRPC/AMQP).
- Contenerización con Docker: creación de Dockerfile para Node.js, trabajo con Docker Compose, orquestación de múltiples servicios.
- Interacción asíncrona: configuración de RabbitMQ/Redis Pub/Sub, procesamiento de colas, entrega garantizada de mensajes.
- Trabajo con datos: patrones Database per Service y Saga (orquestación y coreografía), elección entre MongoDB, PostgreSQL y Redis.
- Pruebas y monitoreo: pruebas unitarias con Jest, pruebas de integración para microservicios, registro con Winston y recopilación de métricas con Prometheus.
- Despliegue y CI/CD: automatización de compilación con GitHub Actions, despliegue en plataformas en la nube (AWS/Azure/Heroku), escalado.
¿Para quién es este libro?
El libro está dirigido a desarrolladores con conocimientos básicos de JavaScript (ES6+) y experiencia con Node.js de al menos 6 meses. Será útil tanto para desarrolladores Junior que quieran entender cómo funcionan los sistemas backend modernos, como para especialistas Middle que planeen implementar microservicios en sus proyectos. Si trabajas con Express/Koa y quieres alcanzar un nuevo nivel de soluciones arquitectónicas, este libro es para ti.
¿Qué aprenderás?
- Cómo descomponer correctamente un monolito en microservicios sin dolor.
- Cuándo usar solicitudes síncronas y cuándo colas de mensajes.
- Cómo garantizar la consistencia de datos entre servicios (CQRS, Event Sourcing).
- Cómo configurar Service Discovery (Consul) y API Gateway (Kong/Nginx).
- Cómo probar microservicios de forma aislada y en integración.
- Cómo automatizar el despliegue y el monitoreo de sistemas en producción.
El libro contiene más de 50 ejemplos de código, escenarios Docker listos para usar y enlaces al repositorio con el proyecto completo. Todos los ejemplos están probados con Node.js 18+ y están actualizados para 2024. ¡Sumérgete en el mundo de los microservicios con Node.js y tus aplicaciones serán flexibles, tolerantes a fallos y listas para escalar!