Table des matières
Outil de préparation à l'installation
Étapes d'installation (graphique)
Utilisez l'API HTTP de gestion fournie par RabbitMQ
Introduction à RabbitMq
Outils de préparation à l'installation
Étapes d'installation (graphiques)
Introduction à RabbitMq
1.1 Introduction au middleware de file d'attente de messages
Le middleware de file d'attente de messages est un composant important dans un système distribué. Il résout principalement des problèmes tels que le couplage d'applications, les messages asynchrones et la réduction du trafic pour obtenir des performances élevées et élevées. disponibilité. Évolutivité et cohérence éventuelle [architecture] ActiveMQ (sécurité), RabbitMQ, ZeroMQ, Kafka (big data), MetaMQ et RocketMQ sont des files d'attente de
messages couramment utilisées. Ce qui suit présente les scénarios d'utilisation courants des files d'attente de messages dans des applications pratiques : traitement asynchrone , Quatre scénarios de découplage d'applications, de réduction du trafic et de communication de messages
1.2 Qu'est-ce que RabbitMQ
RabbitMQ est une implémentation open source d'AMQP développée par le langage Erlang.
AMQP : file d'attente de messages avancée, protocole avancé de file d'attente de messages. Il s'agit d'un standard ouvert du protocole de couche application, conçu pour les middlewares orientés messages, et le client et le middleware de messages basés sur ce protocole peuvent transférer des messages sans être limités par des conditions telles que les produits et les langages de développement.
RabbitMQ est originaire du système financier et est utilisé pour stocker et transférer des messages dans un système distribué. Il fonctionne bien en termes de facilité d'utilisation, d'évolutivité et de haute disponibilité. Les fonctionnalités spécifiques incluent :
1. Fiabilité (Fiabilité)
RabbitMQ utilise certains mécanismes pour garantir la fiabilité, tels que la persistance, la confirmation de transmission et la confirmation de publication. 2. Routage flexible (Flexible Routing)
Avant que le message n'entre dans la file d'attente, le message est acheminé via Exchange. Pour les fonctions de routage typiques, RabbitMQ fournit déjà certaines implémentations Exchange intégrées. Pour des fonctions de routage plus complexes, plusieurs Exchanges peuvent être liés ensemble, et votre propre Exchange peut également être réalisé via le mécanisme de plug-in.
3. Regroupement des messages (Clustering)
Plusieurs serveurs RabbitMQ peuvent former un cluster pour former un courtier logique
4. Les files d'attente hautement disponibles (files d'attente hautement disponibles)
peuvent être mises en miroir sur les machines du cluster, de sorte que les files d'attente soient toujours disponibles lorsque certains nœuds échouent.
5. RabbitMQ multiprotocole
prend en charge plusieurs protocoles de mise en file d'attente de messages, tels que STOMP, MQTT, etc.
6. De nombreux clients
RabbitMQ prend en charge presque tous les langages courants, tels que Java, .NET, Ruby, etc.
7. Interface utilisateur de gestion (Management UI)
RabbitMQ fournit une interface utilisateur facile à utiliser qui permet aux utilisateurs de surveiller et de gérer de nombreux aspects du courtier de messages.
8. Mécanisme de suivi (Tracing)
Si le message est anormal, RabbitMQ fournit un mécanisme de suivi des messages et l'utilisateur peut découvrir ce qui s'est passé.
9. Mécanisme de plug-in (Plugin System)
RabbitMQ fournit de nombreux plug-ins pour s'étendre de plusieurs manières, et vous pouvez également écrire vos propres plug-ins.
Outil de préparation à l'installation
1. Téléchargez Eralng, le lien ci-dessous a fourni
le lien otp_win64_20.2.exe : https://pan.baidu.com/s/1ha-OGMa9AGZFamELP_b48w.
Code d'extraction : 3gpa
2. Téléchargez Rabbitmq, le lien ci-dessous a fourni Rabbitmq-server -3.7 Lien .4.exe
: https://pan.baidu.com/s/1kGMjBc_H1QWRPEs8dRYaHA
.Code d'extraction : vzar
Étapes d'installation (graphique)
1. La première étape :
installez otp_win64_20.2.exe,
faites un clic droit pour l'exécuter en tant qu'administrateur
Continuez ensuite à cliquer sur l'étape suivante pour une installation stupide
2. Étape 2 :
Installer Rabbitmq-server-3.7.4.exe
Double-cliquez sur le fichier Rabbitmq-server-3.7.4.exe, installation stupide, (attention à ne pas l'installer dans le répertoire ! Après l'installation, RabbitMQ existe dans le service Windows et il est à l'état de démarrage.)
Ensuite, installez l'interface de gestion (plug-in)
Entrez le répertoire sbin du répertoire d'installation de RabbitMQ,
cliquez sur la case du chemin ci-dessus, entrez cmd et appuyez sur la touche Entrée.
3. Entrez la commande et cliquez sur Entrée
Les plugins RabbitMQ activent Rabbitmq_management
Étape 3 :
1. Redémarrez le service, double-cliquez sur Rabbitmq-server.bat (vous devrez peut-être attendre un moment après avoir double-cliqué)
2. Ouvrez le navigateur, saisissez http://127.0.0.1:15672 dans la barre d'adresse et vous pourrez voir la page de connexion de l'interface de gestion
Saisissez le nom d'utilisateur et le mot de passe, tous deux permettant à l'invité d'accéder à l'interface principale :
La navigation supérieure est la suivante : aperçu, connexions, canaux, commutateurs, files d'attente, gestion des utilisateurs.
Ce qui précède est le processus d'installation global
—————————————————
Déclaration de droits d'auteur : cet article est un article original du blogueur CSDN "Ordinary Netizen", conformément à l'accord de droits d'auteur CC 4.0 BY-SA , veuillez joindre le lien source original et cette déclaration.
Lien d'origine : https://blog.csdn.net/shuux666/article/details/124337419
Utilisez l'API HTTP de gestion fournie par RabbitMQ
Pour utiliser l'API HTTP de gestion fournie par RabbitMQ, vous devez d'abord activer le plug-in dans RabbitMQ, puis gérer le serveur RabbitMQ via l'interface HTTP RESTful. Voici un exemple simple :
- Activer le plugin de gestion RabbitMQ
Dans le répertoire sbin sous le répertoire d'installation de RabbitMQ, exécutez la commande : rabbitmq-plugins enable rabbitmq_management
pour activer le plug-in de gestion RabbitMQ.
- Accédez à l'interface de gestion web du plugin RabbitMQ Management
Entrez dans le navigateur http://localhost:15672/
, le compte et le mot de passe par défaut sont respectivement guest
et guest
, et connectez-vous à l'interface de gestion Web du plug-in de gestion RabbitMQ.
- Créez des hôtes virtuels, des commutateurs et des files d'attente
Dans l'interface de gestion Web du plug-in RabbitMQ Management, cliquez sur Administratior
l'interface sous le thème, sélectionnez Add a virtual host
la page et créez un nouvel hôte virtuel.
Sous Exchanges
Objet, créez un nouvel échange, choisissez son type et son nom. Il servira à recevoir les messages du producteur et à les remettre dans la file d'attente selon la clé de routage.
Sous Queues
le sujet, créez une nouvelle file d'attente, sélectionnez le nom de la file d'attente et liez-le à la clé de routage d'un échange.
- Appelez l'interface API de gestion RabbitMQ
Dans un programme Java, vous pouvez utiliser RestTemplate
les classes fournies par RabbitMQ pour envoyer des requêtes API RESTful pour accéder à l'interface API de RabbitMQ. La mise en œuvre spécifique est la suivante :
//创建一个RestTemplate对象
RestTemplate restTemplate = new RestTemplate();
//设置RabbitMQ Management API地址
String apiUrl = "http://localhost:15672/api/";
//设置请求头(身份验证)
HttpHeaders headers = new HttpHeaders();
String authString = "guest:guest";
byte[] authEncBytes = Base64.encodeBase64(authString.getBytes());
String authStringEnc = new String(authEncBytes);
headers.set("Authorization", "Basic " + authStringEnc);
//设置请求体(消息内容)
JSONObject message = new JSONObject();
message.put("key", "value");
//发送HTTP POST请求
HttpEntity<String> request = new HttpEntity<String>(message.toJSONString(), headers);
String response = restTemplate.postForObject(apiUrl + "exchanges/vhostName/exchangeName/publish", request, String.class);
//请求成功
System.out.println(response);
Dans le code ci-dessus, vous devez définir l'adresse de l'API de gestion RabbitMQ et lui envoyer une requête HTTP POST pour envoyer le message. Parmi eux, vous devez définir les informations d'authentification dans l'en-tête de la demande (HTTP Header) et définir le contenu du message dans le corps de la demande (HTTP Body). Une fois la demande réussie, une réponse du serveur RabbitMQ sera reçue. Il convient de noter que les variables vhostName et ExchangeName dans le code ci-dessus doivent être remplacées par les noms réels de l'hôte virtuel et du commutateur.