RabbitMQ la création de files d'attente et des liaisons à partir d'une ligne de commande
Si j'ai RabbitMQ installé sur ma machine, il y a une façon de créer un message de la file d'attente à partir de la ligne de commande et de le lier à un certain échange sans l'aide d'un client?
Je pense qu'il n'est pas possible, mais je veux être sûr.
- Je suis également à la recherche pour un client de ligne de commande pour créer des échanges et des files d'attente, mais ne pouvait pas trouver encore.
- Vient de poster une réponse, qui je pense sera de valeur pour vous 🙂
Vous devez vous connecter pour publier un commentaire.
Installer le RabbitMQ plug-in de gestion. Il est livré avec un outil de ligne de commande que vous pouvez utiliser pour configurer l'ensemble de vos files d'attente/échanges/etc.
load_definitions
variable et le fichier correspondant? Ou la description de l'utilisation de l'API HTTP aveccurl
? Je m'attendais à quelque chose d'un peu plus convivial que de créer manuellement http reqs.rabbitmqadmin
sur la ligne de commande.rabbitmqadmin help subcommands
semble être la meilleure documentation.Résumé:
Autres réponses sont bonnes alternatives à ce qui a été demandé. Ci-dessous sont des commandes que vous pouvez utiliser à partir de la ligne de commande.
Tout d'abord, faire tout le nécessaire travail de préparation, par exemple, installez le lapin,
rabbitmqadmin
, etrabbitctl
. L'idée est d'utiliser les commandes derabbitmqctl
etrabbitmqadmin
. Vous pouvez voir quelques exemples de commande: https://www.rabbitmq.com/management-cli.htmlExemple Des Commandes/Réglages:
Les commandes suivantes devraient vous donner la majorité sinon la totalité de ce que vous avez besoin de:
Ajouter un utilisateur et les autorisations
Faire un hôte virtuel et de Définir des Autorisations
Faire un Échange
Faire une File d'attente
Faire une Liaison
Autre Façon de se Lier avec Python
Ce qui suit est une alternative à la ligne de commande de liaison, comme j'ai eu des problèmes avec elle parfois, et trouvé le code python suivant, pour être plus fiable.
Ci-dessus peuvent être exécutés dans le cadre d'un script à l'aide de python. Notez que j'ai mis le sortant des trucs dans des tableaux, ce qui vous permettra d'itérer à travers eux. Cela devrait rendre les choses faciles pour déploie.
Dernières Pensées
Je pense que le ci-dessus devrait vous faire bouger dans la bonne direction, l'utilisation de google si des commandes ne font pas de sens ou de lire en plus avec
rabbitmqadmin help subcommands
. J'ai essayé d'utiliser des variables qui expliquent eux-mêmes. Bonne chance 🙂rabbitmq_user
etrabbitmq_password
ne sont pas déclarées. Si vous y mettreguest
avec un mot de passeguest
, il dit(404, "NOT_FOUND - no queue 'some_incoming_queue' in vhost 'Some_Virtual_Host'")
créer un Échange:
rabbitmqadmin -u {user} -p {password} -V {vhost} declare exchange name={name} type={type}
créer une File d'attente:
rabbitmqadmin -u {user} -p {password} -V {vhost} declare queue name={name}
Lier la File d'attente à l'Échange:
rabbitmqadmin -u {user} -p {password} -V {vhost} declare binding source={Exchange} destination={queue}
Si vous utilisez Linux Debian, il y a un paquet appelé "amqp-outils". L'installer avec
Vous pouvez ensuite utiliser la ligne de commande comme amqp-publier pour envoyer des messages à votre file d'attente
Puis vous pouvez recueillir message(s) à partir de la file d'attente à l'aide de
ou
Il y a aussi (ligne de commande) exemples de rabbitmq-c package /bibliothèque. Après vous construisez, vous pouvez envoyer des messages via la ligne de commande comme
Avoir du plaisir ...
rabbitmqctl, à la condition d'interface de ligne de commande n'expose pas la capacité de créer une file d'attente et le lier.
Il est cependant tout à fait trivial à faire w/un script vite fait si, et le lapin mq guide de mise en route présente plusieurs exemples, à la fois sur l'éditeur ainsi que les consommateurs.
Je suis dissimuler la connexion, mais c'est un littéral d'un liner pour créer une file d'attente. L'opération est aussi de la quantité, ce qui signifie que vous pouvez inclure l'énoncé, dans un script, et être en sécurité en sachant qu'il ne gardera pas de recréer la file d'attente ou de souffler un existant du même nom.
Créer RabbitMq Échange, la File d'attente et de Liaisons dynamique à partir de la CLI sur Windows
J'ai déjà eu une RabbitMQ Server est installé et en cours d'exécution avec plusieurs de la file d'attente et d'échange et voulait maintenant de le créer à la volée à partir de la ligne de commande. Je sais que c'est une vieille question, mais j'ai pensé donner cette information sera utile.
Qui suit est ce que j'ai fait:
Installation
par exemple: C:\Python26\
C:\Python26\python
C:\Python26\rabbitmqadmin.exe
Code:dans un lot de fichier utilisé les commandes ci-dessous
Créer de l'échange:
c:\python26\python.exe rabbitmqadmin.exe déclarer change name=ExchangeName1 type=sujet durable=true
Créer une file d'attente:
c:\python26\python.exe rabbitmqadmin.exe déclarer nom de file d'attente=NameofQueue1 durable=true
Créer de liaison:
c:\python26\python.exe rabbitmqadmin.exe déclarer la source de liaison=ExchangeName1 destination_type=file d'attente de destination=NameofQueue1 routing_key=RoutingKey1
par l'exécution de rabbitmqadmin.exe -aider -les sous-commandes, il répertorie toutes les commandes disponibles
par exemple: c:\python26\python.exe rabbitmqadmin.exe -aider -les sous-commandes
Peut-être un peu en retard à la fête, mais je l'ai fait à l'aide de CURL.
Pour les files d'attente:
Et pour les liaisons
Note 192.168.99.100:15672 points à mon MRQ Gestion
Procédure pas à pas pour Créer et supprimer une file d'attente dans RabbitMQ:
Je ne pouvais pas trouver une ligne de commande de commande de le faire. Voici comment je l'ai fait dans le code java.
Rabbitmq-server version
3.3.5
sur Ubuntu.Liste les files d'attente, pas de files d'attente encore:
Mettre cela en CreateQueue.java
Fournir le fichier jar qui est venu avec votre rabbitmq installation:
Je suis en utilisant rabbitmq-client.jar la version 0.9.1, utilisez celui qui est livré avec votre version de rabbitmq.
Compiler et exécuter:
Il devrait terminer sans erreur, vérifiez vos files d'attente maintenant:
l'kowalski file d'attente existe.
permet de lier l'échange pendant que vous y êtes:
C-;