Développement de la section Utilisation
This commit is contained in:
parent
f668c0fb66
commit
68353450be
|
@ -82,6 +82,57 @@ Si l'on veut que RabbitMQ n'écoute que sur l'interface *localhost* :
|
||||||
ulimit -n 2048
|
ulimit -n 2048
|
||||||
~~~
|
~~~
|
||||||
|
|
||||||
|
## Utilisation
|
||||||
|
|
||||||
|
La documentation officielle propose un [ensemble de tutoriels](https://www.rabbitmq.com/getstarted.html) pour Python, Java, Ruby, PHP, etc.
|
||||||
|
|
||||||
|
Les lignes suivantes proposent un cas d'utilisation minimal avec un émetteur, une queue et un récepteur, le tout illustré en PHP. (Voir [ici](https://www.rabbitmq.com/tutorials/tutorial-one-php.html) pour la source d'inspiration).
|
||||||
|
|
||||||
|
Prérequis : une instance du serveur RabbitMQ en local sur le port standard (5672), php 7/8 et composer.
|
||||||
|
|
||||||
|
Dans un dossier de travail (par exemple `~/src/lapin`), éditer un nouveau fichier `composer.json` avec ce contenu :
|
||||||
|
|
||||||
|
~~~
|
||||||
|
{
|
||||||
|
"require": {
|
||||||
|
"php-amqplib/php-amqplib": ">=3.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
~~~
|
||||||
|
|
||||||
|
Installer `php-amqplib` (un client pour RabbitMQ) avec la commande suivante :
|
||||||
|
|
||||||
|
~~~
|
||||||
|
$ composer install
|
||||||
|
~~~
|
||||||
|
|
||||||
|
Récupérer les fichiers `send.php` et `receive.php` dans le dépôt officiel des tutoriels de rabbitmq :
|
||||||
|
|
||||||
|
~~~
|
||||||
|
$ wget https://raw.githubusercontent.com/rabbitmq/rabbitmq-tutorials/main/php/send.php
|
||||||
|
$ wget https://raw.githubusercontent.com/rabbitmq/rabbitmq-tutorials/main/php/receive.php
|
||||||
|
~~~
|
||||||
|
|
||||||
|
On voit dans le code que le récepteur (fichier `receive.php`) :
|
||||||
|
|
||||||
|
- établie une nouvelle connexion au serveur RabbitMQ en tant qu'invité
|
||||||
|
- ouvre un canal et déclare une queue qui sera suivie
|
||||||
|
- se met en attente de messages à recevoir
|
||||||
|
|
||||||
|
De son côté l'émetteur (fichier `send.php`) :
|
||||||
|
|
||||||
|
- établie une nouvelle connexion au serveur RabbitMQ en tant qu'invité
|
||||||
|
- ouvre un canal et déclare une queue (la même que le récepteur)
|
||||||
|
- construit un message `Hello World!` et le publie dans le canal
|
||||||
|
|
||||||
|
On peut obtenir des infos sur les queues gérées par RabbitMQ avec la commande suivante :
|
||||||
|
|
||||||
|
~~~
|
||||||
|
# rabbitmqctl list_queues
|
||||||
|
~~~
|
||||||
|
|
||||||
|
Note : en production, avec PHP, il est recommandé d'utiliser [amqproxy](https://github.com/cloudamqp/amqproxy) pour une meilleure persistance des connexions.
|
||||||
|
|
||||||
## Management RabbitMQ
|
## Management RabbitMQ
|
||||||
|
|
||||||
### rabbitmqctl
|
### rabbitmqctl
|
||||||
|
|
Loading…
Reference in a new issue