J'utilise rabbitMQ sur docker.
Lors de l'exécution du rabbitmq, je souhaite définir la durabilité du message (durable/transient)
.
Existe-t-il un moyen de mettre en place la durabilité ? (sauf lors de la déclaration de la file d'attente et de l'échange)
Réponse
Trop de publicités?Oui, il est possible de spécifier mode de livraison pour tout message publié. Toutefois, la file d'attente cible doit également être durable pour qu'un message soit conservé.
Voir le chapitre Attributs et charge utile du message dans RabbitMQ documentation :
Dans le modèle AMQP, les messages ont des attributs. Certains attributs sont si que la spécification AMQP 0-9-1 les définit et que les développeurs d'applications n'en ont pas besoin. les développeurs d'applications n'ont pas besoin de réfléchir au nom exact de l'attribut. Voici quelques exemples
Content type Content encoding Routing key Delivery mode (persistent or not) Message priority Message publishing timestamp Expiration period Publisher application id
S message à un échange durable ou le fait que la (les) file(s) d'attente vers laquelle (lesquelles) il est acheminé soient vers lesquelles il est acheminé ne rend pas un message persistant : tout dépend du mode de persistance du message lui-même. tout dépend du mode de persistance du message lui-même. La publication de messages comme persistants affecte les performances (tout comme avec les magasins de données), la durabilité a un certain coût en termes de performances).