No video

Adiós a los estados inconsistentes: Failover y Outbox pattern

  Рет қаралды 9,592

CodelyTV - Redescubre la programación

CodelyTV - Redescubre la programación

Күн бұрын

Cuando comunicamos #microservicios a través de sistemas de mensajería como #RabbitMQ, nos encontramos con que los errores a la hora de publicar eventos de dominio puede hacer que nuestro sistema se quede en un estado inconsistente. Para solucionar este problema, en este video analizamos 2 patrones de publicación y gestión de errores: Failover y Outbox Pattern.
El ejemplo en #TypeScript que mostramos, está extraido del repositorio de código ddd-typescript-example. Para explorar en más profundidad, aquí tienes los recursos 👀 👇
🐙 Repositorio typescript-ddd-example con los ejemplos de código
bit.ly/typescr...
🆕🛰️ Curso de DDD en TypeScript: Comunicación entre #microservicios y aplicaciones
bit.ly/ddd-en-...
🔷 Curso de DDD en TypeScript: Modelado y arquitectura
bit.ly/curso-dd...
﹤🍍﹥ CodelyTV
├ 🎥 Suscríbete: kzbin.info...
├ 🐦 Twitter CodelyTV: / codelytv
├ 💡 Twitter Fer: / fer_vilas
├ 👨🏻‍🌾 Twitter Dani: / dsantaka
├ 📸 Instagram: / codelytv
├ ℹ️ LinkedIn: / codelytv
├ 🟦 Facebook: / codelytv
└ 📕 Catálogo cursos: bit.ly/cursos-...

Пікірлер: 24
@CodelyTV
@CodelyTV Жыл бұрын
¿Quieres seguir profundizando en el tema? Aquí los recursos que mencionamos en el video 👇 🐙 Repositorio typescript-ddd-example con los ejemplos de código bit.ly/typescript-ddd-example 🆕🛰 Curso de DDD en TypeScript: Comunicación entre #microservicios y aplicaciones bit.ly/ddd-en-typscript
@facundosg
@facundosg Жыл бұрын
Muy bueno! no se encuentran muchos videos asi! solucionando problemas complejos de manera concreta!👏👏👏
@dnlnfr
@dnlnfr Жыл бұрын
Yo soy Italiano y sigo el vustro canal. Muy bueno y professional. Queria saber sy quando decis "patron" entendeis "pattern"??
@cristianpul
@cristianpul Жыл бұрын
Sí, Daniele. Se refieren a pattern
@MatiasSidler
@MatiasSidler Жыл бұрын
muy buen vídeo! la única sugerencia que tengo es si pueden graficar las soluciones, así como hacen cuando explican el problema, creo que sería más fácil de entender que simplemente mostrando el código :) más allá de eso, todo súper claro!
@daniels026
@daniels026 Жыл бұрын
Muy top. Si lo he entendido bien, con el outbox pattern puedes asegurar el orden de publicación a nivel de agregado mientras que con failover se podrían intercalar si el message broker falla de forma intermitente.
@josecastroantonio
@josecastroantonio Жыл бұрын
*07:42** Transactional Outbox Pattern*
@favioleyva7793
@favioleyva7793 Жыл бұрын
En el caso de FailOverPublisher.. tmb podria estar caido MongoDb y se perderia el mensaje.. :/
@kiquenet
@kiquenet Жыл бұрын
Alternativa?
@pintzio1
@pintzio1 Жыл бұрын
El escenario que comentas sería que guardas en MongoDB el dato, vas a publicar el evento, falla y al intentar guardar el evento en MongoDB falla éste también. Qué MongoDB falle sólo la segunda vez es poco probable si la primera vez, cuando guardaste el dato, funcionaba bien. Por poder podría pasar 😅. Si usas por ejemplo una DynamoDB, puedes asociarle un Stream de tal forma que cuando escribes en Dynamo ya automáticamente pública en el stream (Kinesis, por ejemplo)
@DiegoGarciaPublicProfile
@DiegoGarciaPublicProfile Жыл бұрын
MongoDB en un sistema distribuido, se puede aumentar la disponibilidad añadiendo nodos. Si el fallo es de red se complica
@javieralbarracin3564
@javieralbarracin3564 Жыл бұрын
Felicitaciones chicos!!!, cómo siempre impecable y un gran aporte sobre estos escenarios en servicios distribuidos, in saludo desde argentina!!
@Katunsy
@Katunsy Жыл бұрын
Hola, excelente video! justo estoy intentando crear un servicio que va a disparar un evento y no estaba seguro cómo podia reducir al maximo los estados incosistente. Esto me ayudará mucho. Solo aclarar que MongoDB si admite transacciones hace un poco mas de 3 años. Me encanta su contenido, saludos!
@sergiosandoval3821
@sergiosandoval3821 Жыл бұрын
🤩 El mejor curso RECOMENDADO!! Mx
@pablor123
@pablor123 Жыл бұрын
Un ejemplo con transacciones sería súper útil
@josedpiambav
@josedpiambav Жыл бұрын
¡Excelente contenido! Muy bien explicado y con ejemplos concretos. Sólo me queda una duda: en el contexto que nuestra aplicación tiene varias replicas ¿el Mongo sería una instancia que acompañe a la replica de la aplicación, para que así pueda administrar las fallas de los eventos que haya atendido esa instancia en particular? ¿o tendremos una servicio o cluster para centralizar, y si es el caso como administrariamos que las diferentes replicas de la aplicacion traten de republicas los mismos eventos fallidos?
@fjmn2001
@fjmn2001 Жыл бұрын
Excelente! Thanks 💪👍
@kiquenet
@kiquenet Жыл бұрын
Muy bueno, sistemas distribuidos. Cómo instalar en Windows (10-Server) RabbitMQ y Mongo?
@Iraida09
@Iraida09 4 ай бұрын
Me ha faltado representacion grafica como en otros videos
@senc01a
@senc01a Жыл бұрын
Y si falla la db del failover?
@mr.nobody4494
@mr.nobody4494 Жыл бұрын
Muy buen contenido chicos, el fondo amarillo de los videos: horrible elección!
@juniorusca602
@juniorusca602 Жыл бұрын
xq hay un huayno de musica de fondo al principio?? xD
@theincredibleillmo9385
@theincredibleillmo9385 Жыл бұрын
Me gustan mucho estos videos, pero siento que el ponente luego es muy aburrido.ñ :(. Anyways, gracias por tanta info.
Acceso a BASES DE DATOS con JPA en Kotlin y Java | #laFunción 8x06
1:05:37
CodelyTV - Redescubre la programación
Рет қаралды 7 М.
Cómo gestionar Errores en un Sistema de Mensajería
12:44
CodelyTV - Redescubre la programación
Рет қаралды 9 М.
女孩妒忌小丑女? #小丑#shorts
00:34
好人小丑
Рет қаралды 80 МЛН
WILL IT BURST?
00:31
Natan por Aí
Рет қаралды 17 МЛН
Cute kitty gadgets 💛
00:24
TheSoul Music Family
Рет қаралды 11 МЛН
NO hagas MICROSERVICIOS si no tienes una buena OBSERVABILIDAD
11:10
CodelyTV - Redescubre la programación
Рет қаралды 22 М.
Diferencias entre Value Object vs Entidad vs Agregado
19:33
CodelyTV - Redescubre la programación
Рет қаралды 18 М.
Implementing the Transactional Outbox pattern with Hangfire
14:28
Milan Jovanović
Рет қаралды 11 М.
Reliably Save State & Publish Events (Outbox Pattern)
9:10
CodeOpinion
Рет қаралды 25 М.
Mejora la Calidad de tu Código utilizando Repositorios
11:24
CodelyTV - Redescubre la programación
Рет қаралды 25 М.
Cómo evito usar JOINs
12:54
CodelyTV - Redescubre la programación
Рет қаралды 32 М.
Lo que necesitas saber de IA como Developer: Modelos vs Ollama vs LangChain
16:57
CodelyTV - Redescubre la programación
Рет қаралды 19 М.
Alternative to the Outbox Pattern? Not so fast.
9:00
CodeOpinion
Рет қаралды 18 М.
Git Merge vs Rebase vs Squash ¿Qué estrategia debemos elegir?
26:59
CodelyTV - Redescubre la programación
Рет қаралды 50 М.