amqp
Specific advantages of NServiceBus over plain RabbitMQ
Main advantages include (but are not limited to): Takes care of serialization/deserialization of messages. Provides a neat model for dispatching messages w. handlers, polymorphic dispatch, arranging handlers in a pipeline etc. Handles unit of work. Provides a neat saga implementation. Gives you a host process that can be F5-debugged as well as installed as a … Read more
RabbitMQ queue messages
Ready Is the number of messages that are available to be delivered. Unacknowledged Is the number of messages for which the server is waiting for acknowledgement(If a client recieved the message but dont send a acknowledge yet). Total Is the sum of Ready and Unacknowledged messages. About your second question: Publish This is the rate … Read more
RabbitMQ: What is the default x-message-ttl value
There are no x-message-ttl argument set by default from the broker side, so basically you can interpret default value as infinity. If you publish message without ttl to queue without ttl set (yupp, there are per-message and per-queue ttl arguments, see note below): if message published as persistent and queue declared as persistent message will … Read more
Cloud connectivity for MQTT and AMQP?
The big difference here to point out is : are we speaking about AMQP 0.x or AMQP 1.0. They are two completely different protocols and only the latter is a ISO/IEC standard supported by the main open sources products like ActiveMQ and Artemis brokers, Qpid Proton clients and Qpid Dispatch Router. Products like RabbitMQ support … Read more
Get Queue Size in Pika (AMQP Python)
I know that this question is a bit old, but here is an example of doing this with pika. Regarding AMQP and RabbitMQ, if you have already declared the queue, you can re-declare the queue with the passive flag on and keeping all other queue parameters identical. The response to this declaration declare-ok will include … Read more
Ack or Nack in rabbitMQ
The basic.nack command is apparently a RabbitMQ extension, which extends the functionality of basic.reject to include a bulk processing mode. Both include a “bit” (i.e. boolean) flag of requeue, so you actually have several choices: nack/reject with requeue=1: the message will be returned to the queue it came from as though it were a new … Read more
How can queues be made private/secure in RabbitMQ in a multitenancy system?
TLDR: The relevant information can be found here: https://www.rabbitmq.com/access-control.html. However, since the rabbitmq documentation is very verbose, below I will describe what seems like the only solution to locking down access to resources. Summary Virtual hosts As Michael Dillon mentions, you should start by making everything happen inside vhosts (virtual hosts) and block the generic … Read more