Patrón SAGA para transacciones distribuidas en microservicios

Поділитися
Вставка
  • Опубліковано 9 лис 2024

КОМЕНТАРІ • 26

  • @NetMentor
    @NetMentor  2 роки тому +4

    Blog: www.netmentor.es/entrada/patron-saga

  • @brandonmanuelventuraumana1035
    @brandonmanuelventuraumana1035 2 роки тому +6

    "Microservicios cuando haga falta y cuando no, no.". Esto dice todo, tan limpio y claro. Excelente explicación y video.
    PD: ¿Dónde se podrá adquirir el curso/libro?

  • @pibefresh
    @pibefresh 2 роки тому +1

    gracias por compartir lo que conosces sobre arquitectura, me sirve muchisimo

  • @gersonmendoza5575
    @gersonmendoza5575 Рік тому

    Excelente explicación, muy claro.

  • @fernandezfavilakevin7255
    @fernandezfavilakevin7255 Рік тому

    El contenido es excelente, es de los mejores en español, aunque no he podido implementar las sagas en mi proyecto ¿Podrías hacer un ejemplo práctico de las sagas con alguna de las librerías?
    Muy sencillo, o ¿Tendrás algún ejemplo de como implantarlas?

  • @hector9079
    @hector9079 2 роки тому +1

    Muy bueno

  • @argenischirinos7336
    @argenischirinos7336 Рік тому

    Muy bueno el video.

  • @YudnerParedes
    @YudnerParedes 6 місяців тому +1

    Hola, tienes la implementación en código del gráfico que muestras en el min 3:30, en algún curso tal vez? Con gusto poder comprarlo.

    • @NetMentor
      @NetMentor  6 місяців тому +1

      Ese gráfico está a modo de ejemplo, pero no está completo en el curso. En el enlace fijado tienes un link al blog que contiene el contenido de este curso

  • @batman4523
    @batman4523 2 роки тому +1

    he visto muchos videos sobre este tema, todos teoricos tenía la esperanza ver algo práctico esta vez, por favor hazme saber si tienes algún curso de pago práctico sobre este tema

    • @NetMentor
      @NetMentor  2 роки тому +1

      el motivo por el que no añadí nada de código es porque básicamente es lo que ya se vio en los vídeos anteriores, y me parecía repetir bastante el contenido. Y no, no tengo contenido de pago.
      Un saludo!

  • @lautaropastorino6173
    @lautaropastorino6173 Рік тому

    Muy claro el video! Explicaste el patrón Saga organizado como "coreografía" ¿Hay alguna desventaja en organizarlo con un servicio orquestador? (Evitando la creación de eventos por ejemplo) ¿En qué caso convendría cada uno?

    • @NetMentor
      @NetMentor  Рік тому +1

      Para mi no hay uno mejor y uno peor, cada uno es para diferentes situaciones, y lo más importante, ambos se complementan, en este parece coreografía porque es sencillo, del servicio 1, va al 2 y de ahí al 3.
      Simplemente si necesitas comunicación síncrona utiliza orquestación, si no, coreografía, tan sencillo como eso. Pero vaya que esto aplica tanto al patrón saga, como a un servicio cualquiera.

  • @YudnerParedes
    @YudnerParedes 6 місяців тому

    Hola, consulta. ¿El productor puede ser a la vez un consumidor de su consumidor inicial ?
    El usuario necesita enviar un mensaje al Micro 2, pero es obligatorio que pase por el micro1
    User ----> Micro 1 ----> Micro 2
    El Micro2 Devuelve el mensaje al Usuario, pero está obligado a pasar por el Micro1.
    User

    • @NetMentor
      @NetMentor  6 місяців тому +1

      Poderse se puede, pero no uses productor/consumidor si el cliente espera respuesta, para eso hay otras formas más adecuadas

  • @k16style
    @k16style 2 роки тому

    Que patron se debe implementar ante el problema que una sola instancia de un microservicio (puede tener 10 replicas en cluster) procese un evento o tarea que le llegue a ese microservicio?

    • @NetMentor
      @NetMentor  2 роки тому

      a que te refieres exactamente con evento? a patrón producers/consumers? si es el caso, por ejemplo en rabbitMQ que es el que enseñe en el curso, AMQP lo que hace es un load balancer entre los consumers por lo que el evento no debería ser escuchado por mas de un consumer. Si no utilizas RabbitMQ tienes que mirate el "Idempotent pattern", quizá debería hacer un vídeo sobre esto 🤔.
      Si te refieres a realizar sagas/workloads distribuidos, royo una parte de la saga es en un pod y otra en una de las replicas (cualquiera de ellas) te recomiendo que le des un vistazo a Microsoft Orleans (si usas .NET).
      Un saludo!

  • @Luis-sq4vr
    @Luis-sq4vr 2 місяці тому

    Producer y consumir no son conceptos de la arquitectura orientada a eventos? No sabía que eran patrones

    • @NetMentor
      @NetMentor  2 місяці тому

      Depende con quién hablas te puede decir eso, lo importante es el concepto. Pero si, pronto haré un vídeo sobre arquitectura orientada a objetos (aunque este video está en un curso de arquitectura distribuida ).

  • @maes4224
    @maes4224 Рік тому

    Una pregunta, donde se puede descargar el PDF que se hizo mencion? gracias

  • @maximilianoviand7683
    @maximilianoviand7683 Рік тому

    Buenas, yo actualmente estoy tratando de desarrollar un proyecto de practica donde una parte de las entidades que tengo son 'Usuarios' y 'Credenciales', donde al crear el usuario, debe de crear sus credenciales de acceso (mail y contraseña). En el caso de que este segundo proceso falle de alguna manera, se busca borrar el registro del usuario creado. Sin embargo, ambos procesos se ejecutan en rutas distintas, en controladores diferentes y siendo cada proceso una transaccion en si misma.
    Me sirve utilizar el SAGA en este caso? Saludos!

    • @NetMentor
      @NetMentor  Рік тому

      Depende, si tienes que devolverle el mensaje al usuario de forma inmediata no, no puedes usar sagas, pero si lo haces "en segundo plano" y luego envías un mensaje de confirmación / error , si, en ese caso si puedes usar sagas

  • @poste48
    @poste48 2 роки тому

    El detalle es cuando hacer los procesos de rollback el servicio falle

  • @Negrisho
    @Negrisho 2 роки тому

    De vuelo el Pipita Higuain, gracias por el video.

  • @jhonesolarte2818
    @jhonesolarte2818 Рік тому

    Como puedes mantener el patron SAGA de tu microservicio cuando consumes un api externa de terceros q solo se limita a ser consumida y dar una respuesta??

    • @NetMentor
      @NetMentor  Рік тому +2

      la añades como un paso de la SAGA y luego solo puedes confiar en que funcione, si solo falla, pues no puedes hacer nada mas que quejarte y poner un bug o llamar al servicio de atención, pero mas alla de eso, no tienes control de nada.