1

Notre application est soutenue par un cluster d'instances EC2. L'un d'entre eux exécute RabbitMQ et toutes les instances lisent et écrivent des messages depuis/vers les files d'attente de messages.EC2 et AMQP: problème TCP étrange sous charge

Cela a fonctionné parfaitement, jusqu'à hier, quand nous avons eu un pic de trafic important. Le système de messagerie a commencé à échouer: les services étaient capables de créer des files d'attente, mais ils ne pouvaient ni écrire ni lire des messages.

Il a commencé à se produire par intermittence, puis tout le temps.

J'ai redémarré RabbitMQ mais cela n'a pas aidé. Redémarré les instances: n'a pas aidé non plus. J'ai fini par arrêter la pile complète, puis recommencer. Après un moment, les choses sont revenues à la normale. D'après ce que j'ai pu savoir (mais je ne suis pas sûr), le problème était que les instances ne communiquaient pas entre elles (RabbitMQ envoie d'autres messages TCP sur un port spécifique).

Je suis préoccupé par le fait que cela se reproduira car je ne suis pas vraiment sûr de ce qui l'a corrigé. Et je ne suis même pas sûr de savoir où regarder.

  • étrangle AWS/limitante communications entre les instances s'il y a trop de trafic se passe?

  • Est-il possible qu'un groupe de sécurité commence à ne pas (pour RabbitMQ fonctionne, vous devez ouvrir le port TCP spécifique)

  • Toutes les autres suggestions?

+0

Y a-t-il quelque chose dans les journaux? Si RabbitMQ limitait les producteurs, il devrait apparaître dans les journaux. –

+0

@old_sound Merci. C'était ça. Un "Espace disque libre insuffisant". avertissement a conduit à "Les éditeurs seront bloqués jusqu'à ce que cette alarme efface" l'état. Je n'avais aucune idée que RabbitMQ pouvait faire ça. Si vous postez votre commentaire en réponse, je l'accepterai. Cela m'a beaucoup aidé. – PJC

+0

Vérifiez ce lien sur le contrôle de flux RabbitMQ - http://www.rabbitmq.com/memory.html, peut-être le manque d'espace disque ou d'autres ressources est la cause de vos problèmes. – pinepain

Répondre

0

Si RabbitMQ était limiteur de production, il devrait apparaître dans les journaux. Spécialement lorsque RabbitMQ décide d'étrangler les éditeurs afin d'éviter de manquer de mémoire ou d'espace disque. Comme le souligne @ zaq178miami, voir ce lien: http://www.rabbitmq.com/memory.html