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
0 answers

Howto use a single Connection to publish messages in RabbitMQ in a dotnet web application?

I have a .NET Framework 4 Web Service, that I intend to integrate with RabbitMq. The Web service in question will work as the Publisher and I will have a new application console responsible for consuming the messages. While I was reading the…
Arnaldo Manuel
  • 53
  • 1
  • 1
  • 7
0
votes
0 answers

Reject rabbitMQ message with pre-message TTL

I have added ttl (30seconds) in the queue during the auto-creation of the queue in the RabbitConfig class. I would like to extended/reduced ttl(10seconds) for certain message and reject them, when necessary, inside the @RabbitListener method…
0
votes
0 answers

Getting 401 not_authorised when sending a request to a RabbitMQ Exchange

I'm getting the following response when trying to publish to a RabbitMQ exchange whose virtual host the user has access to: { "error": "not_authorised", "reason": "Not management user" } I can give the user the management tag but that would…
Iliablun
  • 17
  • 1
  • 6
0
votes
0 answers

RabbitMq Multiple Consumers in .Net

I want The consumer received only own massages with route key this is my publisher: public void SendOrder(CreateOnlineOrderCommand command) { var routingKey="test"; using var channel = _connection.CreateModel(); _model…
Shahram
  • 57
  • 2
  • 7
0
votes
1 answer

RabbitMQ bind exchange to exchange in bash

I would like to bind an exchange to another exchange via a bash script (what I plan to use within a Dockerfile). As simple code (like JS) it is fine, working perfectly, but I would like to use plain bash script for it, if it is possible. The part of…
huncyrus
  • 648
  • 8
  • 18
0
votes
1 answer

How to set the a redelivery time for RabbitMQ

I'm trying to understand how to set the redelivery time for basic.nacked messages. Some important info is that I'm using quorum queues with a redelivery amount of 5 times. Consider the following scenario: What is happening Now: Producer sends…
0
votes
1 answer

Single RabbitMQ queue and multiple routing key

We've got an application that will be using RabbitMQ. The design is to use a single exchange single queue with multiple routing keys for multiple teams and they will communicate through this single queue. I'm developing a java Application to just…
0
votes
1 answer

RabbitMQ : Sending Messages to another Queue if there's no consumers

Is there's a way in RabbitMQ to route messages in the queue when it has no consumer to another queue. I'm thinking about using mixture of ttl and deadletter exchange so if messages exceeds some period of time the message will be expired and routed…
0
votes
1 answer

unable to clear logs stored by RabbitMQ

I have RabbitMQ running on my test server. The log file has grown into 20 GB and i would like to clear it. I even have a scheduler to delete it timely but it is not working due to below issue. Issue: If i delete the log file either manually or via a…
Minions
  • 27
  • 9
0
votes
3 answers

RabbitMQ ha-mode all or exactly differences?

We have a cluster with 3 nodes, we currently have the following HA (High Availability) mirror policy as shown below: Seeing as we specify the ha-params as 2, does this mean mirror to the 2 other nodes, or 2 nodes in total or the 3? Is this the…
Andrew
  • 2,571
  • 2
  • 31
  • 56
0
votes
1 answer

RabbitMQ with Django Project and Scrapy to Push and Comume Message's

I've Django application that is working with Celery and using RabbitMQ as message broker. I've separate project for scrapy from where I scraped data and want to push this scrapped data into rabbitMQ then django will consume this RabbitMQ message's…
0
votes
1 answer

Getting java.net.SocketException: Connection reset error on RabbitMQ connection using JDK1.7

JDK Version 1.7 RabbitMQ: AWS RabbitMQ - amqps protocol Java Client Maven: com.rabbitmq amqp-client 4.12.0 I am trying to create…
Soorya Prakash
  • 921
  • 3
  • 9
  • 29
0
votes
1 answer

RabbitMq is delivering messages but not creating queue

as explained in the title, I am using spring boot to send a message and receive it, apparently, it is working perfectly since I can see what I send in the console: Sending a message: sending Receiving a message: receiving The problem here is that I…
Ăżiž
  • 3
  • 2
0
votes
2 answers

How to bind Spring cloud stream binding for producer and consumer?

I am new to Spring cloud and RabbitMQ. I am trying to produce and consume messages from Rabbit MQ. I am having difficulty in configuring exchange name and queue name for producer and consumer. I want to connect to the existing exchange called to…
0
votes
1 answer

How to acknowledge all the unacked messages present in a RabbitMQ queue using REST API from Mule 3

I have to acknowledge all the unacknowledged message and make the count zero. If the message is in ready so the using the purge requester (DELETE http://localhost:8767/api/queues/vhost/name/contents) I am able to purge and remove the messages but if…
Devendra
  • 219
  • 2
  • 22