RabbitMQ con Spring Boot: Enviando mensajes entre microservicios

แชร์
ฝัง
  • เผยแพร่เมื่อ 27 ธ.ค. 2024

ความคิดเห็น • 52

  • @PabloQ90
    @PabloQ90 ปีที่แล้ว

    Mucha gracias! Muy util, ya que veo que lo piden mucho en las ofertas de trabajo

  • @victorcomo4952
    @victorcomo4952 4 หลายเดือนก่อน

    Consulta, si publico un mensaje desde la consola de RabbitMQ el mismo no llega a la clase Consumer. Me podran ayudar?

  • @abelacevedo4249
    @abelacevedo4249 7 หลายเดือนก่อน

    Consulta, RabbitMQ se usa para todos los endpoints, osea cuando uso una peticion http puedo usar este tipo de comunicacion o solo es para enviar mensajes. Es preferible usar comunicacion Sincrona o Asincrona para todos los controllers de un micro?

  • @BrunoConstain
    @BrunoConstain ปีที่แล้ว +2

    entendi todo , pero estoy confundido , cual seria la ventaja o la diferencia de utilizar RabbitMQ para recibir un mensaje u objeto de otro microservicio pudiendo ocupar Open Feing o restTemplate utilizando API rest ??? saludos exelente video

    • @SACAViXTech
      @SACAViXTech  ปีที่แล้ว +5

      Hola Moisés , la principal ventaja es quitarte de arriba los problemas del patrón Request/Response y de la comunicación síncrona, logrando independencia, lo abordare en algún vídeo más adelante, saludos

    • @BrunoConstain
      @BrunoConstain ปีที่แล้ว +1

      @@SACAViXTech ok gracias amigo

  • @damarysv9058
    @damarysv9058 2 ปีที่แล้ว

    gracias! ahora me queda mas claro los conceptos y la forma de utilizar RabbitMQ :)

  • @victorcomo4952
    @victorcomo4952 4 หลายเดือนก่อน

    Muchísimas gracias por tu video, me has aclarado un montón de cosas

  • @davidgomez9271
    @davidgomez9271 ปีที่แล้ว

    q crack pelado amigo!!! mejor explicado imposible jeje

  • @nestorinfante4100
    @nestorinfante4100 2 ปีที่แล้ว +1

    Excelente vídeo, gran ejemplo. Tengo una duda si tenemos un microservicio A (Productor) y un microservicio B (Consumidor) como el microservicio B le notifica al microservicio A que un registro fue procesado con éxito o si ocurre una excepción de base de datos como se responde.

    • @SACAViXTech
      @SACAViXTech  2 ปีที่แล้ว +2

      Hola Nestor, en realidad si ocurre una excepción existe un mecanismo o forma de configuración de las colas en las cuales el consumidor debe dar un "ACK" al mensaje para que sea eliminado de la cola. Si ocurre un error a nivel de aplicación este mensaje no se elimina de la cola y se reintenta procesar por el consumidor al cabo de un tiempo nuevamente. Este proceso puede repetirse por un tiempo, si el error persiste y necesitas enterarte de que no se pudo procesar el evento lo mas recomendable es pushear a otra cola llamesmola de "eventos-perdidos" y que a quien le interese la lea y tome acción al respecto.

  • @marioco1991
    @marioco1991 ปีที่แล้ว

    Excelente explicación, muchas gracias por el aporte.

  • @vktop2
    @vktop2 ปีที่แล้ว +1

    Buen video!, consulta puedo conectarme desde Azure a un Rabbit MQ que esta en AWS? Gracias

    • @SACAViXTech
      @SACAViXTech  ปีที่แล้ว

      Hola si, claro depende de la config en aws, pero si es posible.

  • @andriuxonetube
    @andriuxonetube 4 หลายเดือนก่อน

    Excelente video!! muchas gracias!!

  • @davidleonardobernal61
    @davidleonardobernal61 2 ปีที่แล้ว +2

    Excelente ejemplo, creo que si se usan los exchanges se le puede sacar mucho mas valor, ya que podremos enrutar mensajes medianamente los routingkey y los bindingkey. Espero poder ver una saga 😍

  • @sosafloresluisangel5676
    @sosafloresluisangel5676 11 หลายเดือนก่อน

    Excelente video, me ayudas mucho en mi formación. Me ayudarias con unas dudas acerca de su uso, comúnmente en la vida profesional como suele usarse se sustituye la comunicación Http entre servicios o el uso es para situaciones especificas ejemplo: refrescar configuraciones de un servidor de configuraciones centralizado, seguimiento de trazas por ejemplo con zipkin, o cuando un servicio debe estar atento a los cambios de otro

  • @favioamarillamino4665
    @favioamarillamino4665 2 ปีที่แล้ว +1

    Que pasaria si el servidor fisico se apagase y el rabbit aun tiene muchos mensajes que procesar en la cola? Se perderian esos datos o queda guardado en algun lugar ?

    • @aleckvinent
      @aleckvinent 2 ปีที่แล้ว +1

      queda en el broker en espera de consumidores. es una utilidad muy interesante pues se espera por la disponibilidad de las entidades. un ejemplo sería usarlo en una app que tenga mucha demanda, de manera que ante una gran cantidad de peticiones se puede prevenir que se caiga el servicio pues el broker es quien se encarga de gestionar y distribuir.

    • @favioamarillamino4665
      @favioamarillamino4665 2 ปีที่แล้ว

      @@aleckvinent el broker es persistido en memoria o en algun sistema de ficheros? Porque si se guardara las colas en memoria en caso que el servidor falle esas colas se podrian perder

    • @elahens88
      @elahens88 2 ปีที่แล้ว +4

      @@favioamarillamino4665 cuando se crea la cola puedes especificar la propiedad "durable = true" para que guarde los mensajes en disco, también puedes manejar la propiedad a nivel de mensajes

    • @favioamarillamino4665
      @favioamarillamino4665 2 ปีที่แล้ว +1

      @@elahens88 Excelente, gracias por aclararme las dudas, gracias

    • @SACAViXTech
      @SACAViXTech  2 ปีที่แล้ว

      Gracias por tu aporte Eddy !

  • @alexanderfuentespe
    @alexanderfuentespe 11 หลายเดือนก่อน

    Excelente vídeo como lo explicas, dime en este caso, yo tengo un app android que consumen un api rest de mi microservicio, disculpa mi ignorancia, pero android se puede poner el rabbit o tendría que crearme una carpeta "DUMMY" como tu la tienes y ahí manipular la información. Lo que sucede es que como tengo una app de pedidos y debido a la alta concurrencia necesito manejar el tema de stock de productos y pues me parecio que las colas como están basados en eventos sería buena idea. Yo tengo mi proyecto similar al tuyo todo en uno solo.

    • @SACAViXTech
      @SACAViXTech  11 หลายเดือนก่อน

      Hola Alexander, gracias, sumame en LinkedIn como @yoandypv

  • @javsan77
    @javsan77 8 หลายเดือนก่อน

    Very good explanation!! Thanks.

  • @joseantonioriosmonterrey2484
    @joseantonioriosmonterrey2484 ปีที่แล้ว

    Excelente, muchas gracias.

  • @LucianoMarcelo27011965
    @LucianoMarcelo27011965 2 ปีที่แล้ว +1

    gracias, desde Chile

  • @luiscarbonel1991
    @luiscarbonel1991 2 ปีที่แล้ว

    Como siempre con contenido interesante y aportando a la comunidad. Gracias míster. 💪💪💪

    • @SACAViXTech
      @SACAViXTech  2 ปีที่แล้ว

      Gracias a ti crack, saludos a la doña 👍

  • @DeatherTem
    @DeatherTem 2 ปีที่แล้ว

    Muy interesante el video, muchas gracias! :D

  • @RamiroAsincrono
    @RamiroAsincrono 10 หลายเดือนก่อน +1

    Gracias!

  • @Lp-er9oj
    @Lp-er9oj 2 ปีที่แล้ว +1

    hola amigo muy buen video! donde esta el codigo o repo que dijiste que ibas a dejarlo? saludos!

    • @SACAViXTech
      @SACAViXTech  2 ปีที่แล้ว +2

      Hola, gracias por tu comentario, el código acá: github.com/yoandypv/spring-boot-rabbit-mq

  • @NeoTRAN001
    @NeoTRAN001 2 ปีที่แล้ว

    Excelente vídeo, ¿Hay alguna forma de que el consumidor le mande una notificación al productor de que todo ha salido bien?
    Por un ejemplo un servicio de auth, le mandas al consumidor las credenciales y este le responda si es un usuario valido, y ya el productor siga con algún proceso extra

    • @SACAViXTech
      @SACAViXTech  2 ปีที่แล้ว +1

      Hola Neo, este tipo de comunicación sienta sus bases en el desacoplamiento, y en el productores y consumidores no se conocen, por lo que no esta pensada para ese escenario. Sin embargo existen los acuses de recibo (ACK), un mecanismo mediante el cual el mensaje no se elimina del bus mientras no sea consumido por el destinatario, el objetivo de alguna manera es poder lograr la garantía de entrega. Igual como WA puedes siempre crear una cola para notificar completitud en sentido inverso, cuando el consumidor termine publique un mensaje indicando que proceso correctamente el mensaje X que se había enviado. Eso te puede funcionar.

  • @Nestavov
    @Nestavov 8 หลายเดือนก่อน

    Muy buena explicacion. Gracias.
    Me da error en el Consumer.java en log.info , no reconoce el log

    • @SACAViXTech
      @SACAViXTech  8 หลายเดือนก่อน

      Hola, debes agregar lombok a tu IDE

  • @jordanalbano5191
    @jordanalbano5191 4 หลายเดือนก่อน

    Que genio savca

  • @Batuzai25
    @Batuzai25 5 หลายเดือนก่อน

    Bro excelente video, pero tapas el codigo con tu cara debes estar pendiente de eso

  • @alexanderfuentespe
    @alexanderfuentespe 11 หลายเดือนก่อน

    Cómo podría contactarme contigo para que me des una asesoría más personalizada?

  • @mikeriactive182
    @mikeriactive182 ปีที่แล้ว

    muy buen tuto, me suscribo

  • @hectortrapeator4069
    @hectortrapeator4069 2 ปีที่แล้ว

    Estimado cuando 1 ejemplo de orquestaciôn -Saga

  • @ricardoventura3155
    @ricardoventura3155 ปีที่แล้ว

    no me lee los mensajes

  • @oleaga
    @oleaga 2 ปีที่แล้ว

    Lastima que no sube el codigo...

    • @SACAViXTech
      @SACAViXTech  2 ปีที่แล้ว +2

      Hola @Kevin, acá te comparto el código, perdón olvide subirlo cuando hice el video. github.com/yoandypv/spring-boot-rabbit-mq

    • @oleaga
      @oleaga 2 ปีที่แล้ว

      Muchas gracias 😎👌🏼

    • @oleaga
      @oleaga 2 ปีที่แล้ว

      @@SACAViXTech creo que esta como privado el repositorio o bien el link no es correcto 😔

    • @SACAViXTech
      @SACAViXTech  2 ปีที่แล้ว

      @@oleaga Intenta de nuevo a ver, había quedado privado 😢

    • @oleaga
      @oleaga 2 ปีที่แล้ว

      @@SACAViXTech ahora si 10/10, muchas gracias!! 😀

  • @MrLeninmanrique
    @MrLeninmanrique 2 หลายเดือนก่อน

    Muchas gracias, excelente video!!