Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

410
Vistas
Consumir mensajes de la cola de RabbitMQ usando Spring Cloud Stream 3.0+

Tengo un productor que produce mensajes en una cola de RabbitMQ mediante un intercambio directo.

nombre de cola: TEMP_QUEUE , nombre de intercambio: TEMP_DIRECT_EXCHANGE

Producir en esta cola es fácil ya que en mi aplicación de productor uso Spring AMQP con el que estoy familiarizado.

En mi aplicación Consumer, necesito usar Spring cloud stream versión 3.0+.

Quiero evitar el uso de anotaciones heredadas como @EnableBinding , @StreamListener porque están a punto de quedar obsoletas.

El código heredado para mi aplicación se vería así:

 @EnableBinding(Bindings.class) public class TempConsumer { @StreamListener(target = "TEMP_QUEUE") public void consumeFromTempQueue(MyObject object) { // do stuff with the object } } public interface Bindings { @Input("TEMP_QUEUE") SubscribableChannel myInputBinding(); }

De sus documentos he descubierto que puedo hacer algo así

 @Bean public Consumer<MyObject> consumeFromTempQueue() { return obj -> { // do stuff with the object }; }

No me queda claro cómo especifico que este bean se consumirá de TEMP_QUEUE . Además, ¿qué pasa si quiero consumir de varias colas?

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Debe usar application.yml para vincular su bean.

 spring.cloud.stream: function.definition: consumeFromTempQueue

Puede usar esta configuración para configurar la fuente, el proceso y el sumidero también. En su caso, solo está utilizando una fuente.

Puedes leer este post para más información.

over 4 years ago · Santiago Trujillo Denunciar

0

Consulte Consumo de colas/intercambios existentes .

Puede consumir de varias colas con

 spring.cloud.stream.bindings.consumeFromTempQueue-in-0.destination=q1,q2,q3 spring.cloud.stream.bindings.consumer.multiplex=true

Sin múltiplex obtendrá 3 enlaces; con multiplex, obtendrá 1 contenedor de escucha escuchando múltiples colas.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda