Questions tagged [rabbitmq-exchange]

In RabbitMQ, messages are not published directly to a queue. Instead, the producer sends messages to an exchange. Use this tag only if your question is about the RabbitMQ Exchanges, or if the question revolves around the routing keys or message queues to which the exchange delivers the message for end publishing.

RabbitMQ is a message broker based on the AMPQ protocol.

Exchanges are AMQP entities where messages are sent. Exchanges take a message and route it into zero or more queues. The routing algorithm used depends on the exchange type and rules called bindings. AMQP 0-9-1 brokers provide four exchange types:

  • Direct exchange: (empty string) and amq.direct
  • Fanout exchange: amq.fanout
  • Topic exchange: amq.topic
  • Headers exchange: amq.match (and amq.headers in RabbitMQ)

Besides the exchange type, exchanges are declared with a number of attributes, the most important of which are:

  • Name
  • Durability (exchanges survive broker restart)
  • Auto-delete (exchange is deleted when all queues have finished using it)
  • Arguments (these are broker-dependent)

Exchanges can be durable or transient. Durable exchanges survive broker restart, whereas transient exchanges do not (they have to be redeclared when the broker comes back online). Not all scenarios and use cases require exchanges to be durable.

RabbitMQ is open source message broker software (sometimes called message-oriented middleware) that implements the Advanced Message Queuing Protocol (AMQP). The RabbitMQ server is written in the Erlang programming language and is built on the Open Telecom Platform framework for clustering and failover. Client libraries to interface with the broker are available for all major programming languages.

419 questions
0
votes
1 answer

How to get header from RabbitMQ with spring integration

In order to use the delayed-exchange I am sending by "int:gateway" messages to RabbitMq with this method: void send(@Payload Notification request, @Header(MessageProperties.X_DELAY) Integer delay, @Header("routingKey") String routingKey); I can see…
0
votes
1 answer

How do i send delayed message in rabbitmq using the rabbitmq-delayed-message-exchange plugin?

i have enabled the plugin using rabbitmq-plugins enable rabbitmq_delayed_message_exchange I am trying to create delayed exchange and attached header x-delay with 5000ms as int value and binded it to a queue it dint work. So i tried it using Pika…
Vinay Sawant
  • 368
  • 2
  • 7
  • 23
0
votes
1 answer

Delayed messages not appearing in queue while using rabbitmq_delayed_message_exchange

I was trying to use this plugin and it seemed pretty simple and effective. I was able to create the exchange but when i am publishing a request, if there is a non zero x-delay value, i am unable to see the message being passed on the queue.(works…
mayank
  • 11
  • 3
0
votes
1 answer

Spring boot rabbitMQ consumers stops pick up messages because of json conversion failure

I am using spring-boot 1.4.2 and rabbitMQ 1.6.5.RELEASE(not using spring-boot-starter-rabbit). I have multiple micro-services in my project and most of the micro services contains rabbitMQ consumers. One among the project will produce message. Few…
VelNaga
  • 3,593
  • 6
  • 48
  • 82
0
votes
2 answers

New Connection not getting created rabbitmq java client

I've just started studying rabbitmq. So while just doing some basic stuff in rabbitmq with java client am getting the below issue Exception in thread "main" java.util.concurrent.TimeoutException at…
Sharique
  • 781
  • 5
  • 12
  • 33
0
votes
1 answer

RabbitMQ : Shovel to multiple servers from one queue based on messages routing key

My Scenario : We are using RabbitMQ for broadcasting messages to about 300 other computers in a network. We are using RabbitMQ on Windows Server, C#.Net Client (EasyNetQ) basic solution is to assign a routingkey for each destination…
0
votes
1 answer

RabbitMQ delayed exchange plugin loads and resources

We are using rabbitmq (3.6.6) to send analysis (millions) to different analyzers. These are very quick and we were planning on use the rabbit-message-plugin to schedule monitorizations over the analyzed elements. We were thinking about…
VdS
  • 47
  • 9
0
votes
2 answers

EasyNetQ publish and consume

I am new to EasyNetQ and RabbitMQ.Unfortunately I am having problem with consuming messages and I am not sure if its because I am doing the Publish wrong or either my consuming is not correct. I can see by publishing, it does send to queue and…
hello world
  • 385
  • 5
  • 24
0
votes
1 answer

How to configure MassTransit in an unreliable network environment?

I'm trying to get my head around MassTransit in combination with RabbitMQ. The basic concepts are working in a test project, but what I need is the following: My system will have one or more servers that react to real life events (telephony). These…
Frank
  • 431
  • 1
  • 5
  • 25
0
votes
2 answers

Not able to recieve the messages RabbitMQ

I am following tutorial 4 (Routing). Following is the code for send.py import pika import sys connection = pika.BlockingConnection(pika.ConnectionParameters( host='localhost')) channel =…
Paul Schimmer
  • 161
  • 3
  • 22
0
votes
1 answer

Rabbit mQ messages moving from ready queue to Unack queue

I have a separate publisher and consumer.I start publisher and publish messages.Now i start consumer and problem is that the messages move from ready queue to unack queue marking the messages as redelivered which i want to avoid.So what i want is it…
user
  • 173
  • 2
  • 15
0
votes
0 answers

Getting the number of records read by Rabbit mQ

We are having application that read multiple files from remote.Now we have to maintian a log of the number of records read from each file by Queue Consumer.Can anyone please help ?
0
votes
1 answer

Information about rabbitmq delayed-exchange

We are using rabbitmq-server_3.5.7 and its corresponding delayed-message-exchange plugin Until now we were using direct-exchanges and controlling delays on message-producers on client applications (and also keeping track of the number of messages…
VdS
  • 47
  • 9
0
votes
1 answer

Remove message from rabbit MQ after limited attempts of requeing

I put records from a file into rabbit mq,read records from queue and call a service.For rejected records,I am sending a negative acknowledgemnt and requeuing with channel.basicNack method.But requirement is that we need to make only some 3 attempts…
0
votes
1 answer

want to purge queue in remote machine rabbitmq

I am having rabbitmq up and running in another machine with ip address 10.8.11.12 on port 15672 and in that i am having a queue named "hello". I want to purge hello queue from my machine using CLI (command line interface) I have tried following to…
CHEK D
  • 63
  • 1
  • 7