2010-11-03 5 views
0

Nous exécutons la dernière version de RabbitMQ 2.1.1 sur le serveur Windows, et en utilisant le client .Net. Nous effectuons un test de la façon suivante: en publiant 500 000 messages dans l'échange de fanout non pérenne non pérenne, le client utilise la file d'attente automatique. Il n'y a qu'une seule file d'attente. L'éditeur envoie ~ 10K messages par seconde. Après l'envoi de tous les messages, il se déconnecte. L'outil rabbitmqctl montre que la taille de la file d'attente est 0, mais le destinataire reçoit toujours des messages pendant quelques secondes, il n'a reçu que 60% des messages. Savez-vous pourquoi il y a un tel retard et comment le minimiser?Réception de message RabbitMQ plus lent que la publication

À la votre!

Répondre

1

Si vous utilisez basic.consume avec no_ack = True (accusés de réception désactivés), le serveur enverra simplement tous les messages dont il dispose. Le comportement Voir se produit lorsque le serveur a envoyé tous les messages à votre client (c'est pourquoi la file d'attente est vide), mais ils peuvent être encore mis en mémoire tampon sur le réseau quelque part ou dans votre client.

Questions connexes