Message-oriented middleware
Un middleware que desacopla la producción y el consumo de mensajes y permite trabajar de forma asincrónica.
Tecnología
- AMQP
- RabbitMQ (C#)
Temario
- Concepto de middleware
- Tipos de middleware: RPC, MOM, otros
- MOM
- Definición
- Ventajas: asincronía (procesos sincrónicos vs asincrónicos), ruteo inteligente, otras
- Desventajas
- Colas de mensajes
- Ruteo de mensajes
- Ejemplos de dónde usar MOM y comunicación asincrónica
- Patrones de mensajería
- Basic message delivery
- Work queue (competing consumers): prefetch y el problema del fair dispatching
- Publish/subscribe
- Request/reply asincrónico
- Streams vs queues
- Message broker: concepto y para qué se usan
- RabbitMQ
- Ventajas
- AMQP
- Exchanges: fanout, direct, otros
- Manejo de errores
- Acknowledge
- Dead-letter queue
- Mensaje envenenado
- Orden de los mensajes: depende del broker y su configuración
- Garantías de entrega
- At most once delivery
- At least once delivery
- Exactly once processing
- Relación con el manejo de errores y la idempotencia
Clases
RabbitMQ
MOM y AMQP: colas, work queues, publish/subscribe, filtros y request/reply.