SlideShare une entreprise Scribd logo
1  sur  21
RabbitMQ
Plan
• Principe de la messagerie entre application
• Présentation :
• Le protocol AMQP 1.0
• Pourquoi un système de messagerie ?
• C’est quoi RabbitMQ ?
Présentation
• La messagerie fournit un mécanisme pour l'intégration de systèmes
faiblement couplés
• L'unité centrale de traitement dans un message est un message qui
contient généralement un corps et un
entête
Cas d’utilisation
• Les cas d’utilisation :
• Agrégation des fichier de journalisation LOG entre les systèmes ;
• La propagation d’évènements dans un système ;
• Affectation de taches aux nœud au sein d’un système distribué.
AMQP
• AMQP est un protocole binaire qui vise à standardiser la
communication middleware
• Advanced Message Queuing Protocol :
• Conçu en 2006 par JP Morgan.
• Standardisé : Norme internationale ISO / IEC 19464: 2014
• Sécurisé, Flexible, fiable, binaire, Multiplexé
• interopérable
AMQP
• Barclays Bank PLC
• Cisco Systems, Inc.
• Credit Suisse
• Deutsche Börse Systems
• Envoy Technologies Inc.
• Goldman Sachs
• iMatix Corporation
• IONA Technologies
• JPMorgan Chase Bank & Co.
• Microsoft Corporation
• Novell
• Rabbit Technologies, a joint venture of CohesiveFT and LShift
• Red Hat, Inc.
• Solace Systems, Inc.
• Tervela, Inc.
• TWIST Process Innovations
• WSO2, Inc.
• 29West Inc.
AMQP
• Le protocole AMQP définit :
• Exchanges : est le broker endpoints qui se charge de la reception du message
et le route vers la queue appropriée.
• Queues : stockent les messages destinés à un subscriber en attente qu’ils
soient récupérés
• Bindings : règles qui lient les exchanges et les queues.
AMQP
Producer
Consumer
Brocker
MSG
MSG
Exchange
Queue
Binding
Solutions existantes
• Les solutions de messagerie implémentent différents protocoles de
transfert de messages tels que AMQP, XMPP, MQTT et bien d'autres
• La variété des protocoles implique un verrouillage du fournisseur
lors de l'utilisation d'une solution de messagerie particulière
appelé un courtier de messagerie) « Broker »
Solutions existantes
• sqfjhgsdfjhgdu
Sonic MQ
RabbitMQ
• RabbitMQ est une implémentation du protocole AMQP
• Il est opensource
• Il est écrit en langage Erlang
• Il dispose d’une architecture « pluggable » et fournit une extension
pour d'autres protocoles tels que HTTP, STOMP et MQTT
RabbitMQ
RabbitMQ
• Chaque message est publié avec une routing key
• Toute liaison faite entre un exchange et une queue a un binding key
• Le routage des messages est déterminé en fonction de la
correspondance entre les routing keys et les binding keys
Models de messagerie dans
RabbitMQ
• Plusieurs modèles de messagerie sont mis en œuvre par les différents
types d’exchanges que fournit rabbitMQ :
default direct fanout
topic headers
Models de messagerie dans
RabbitMQ / default
AMQP
Default
Chat
Log
general
error
warning
Publisher
Publisher Subscriber
Subscriber
Subscriber
Exchange=‘’
Key=‘general’
Payload=‘ABC’
Models de messagerie dans
RabbitMQ / direct
AMQP
Default
Chat
Log
general
error
warning
Publisher
Publisher Subscriber
Subscriber
Subscriber
Exchange=‘chat’
Key=‘b_general’
Payload=‘ABC’
b_general
Models de messagerie dans
RabbitMQ / fanout
AMQP
Default
Chat
Log
general
error
warning
Publisher
Publisher Subscriber
Subscriber
Subscriber
Exchange=‘log’
Key=‘’
Payload=‘ABC’
Models de messagerie dans
RabbitMQ / topic
AMQP
Default
Chat
Log
general
error
Warning.serv
Publisher
Publisher Subscriber
Subscriber
Subscriber
Exchange=‘log’
Key=‘warning.#’
Payload=‘ABC’
Warning.cli
Models de messagerie dans
RabbitMQ / headers
• Un échange « headers » route les messages en fonction d'un
message personnalisé placé dans le header du message envoyé
RabbitMQ / Sécurité
• RabbitMQ utilise SASL pour l'authentification
• RabbitMQ utilise des listes de contrôle d'accès (ACL) pour
l'autorisation
• SSL / TLS peut être activée pour securiser les canaux de
communication AMQP.
Conclusion
• RabbitMQ est une solution de messagerie robuste qui peut être
utilisée dans divers scénarios en fonction des besoins de votre
application.

Contenu connexe

Tendances

1 - Généralités - Réseaux Informatiques.pdf
1 - Généralités - Réseaux Informatiques.pdf1 - Généralités - Réseaux Informatiques.pdf
1 - Généralités - Réseaux Informatiques.pdfKanySidibe
 
Etude et mise en place d’un VPN
Etude et mise en place d’un VPNEtude et mise en place d’un VPN
Etude et mise en place d’un VPNCharif Khrichfa
 
Alphorm.com Formation Certification NSE4 - Fortinet Fortigate Infrastructure 6.x
Alphorm.com Formation Certification NSE4 - Fortinet Fortigate Infrastructure 6.xAlphorm.com Formation Certification NSE4 - Fortinet Fortigate Infrastructure 6.x
Alphorm.com Formation Certification NSE4 - Fortinet Fortigate Infrastructure 6.xAlphorm
 
Methodes d'accès dans les réseaux locaux
Methodes d'accès dans les réseaux locauxMethodes d'accès dans les réseaux locaux
Methodes d'accès dans les réseaux locauxInes Kechiche
 
Installation Zimbra.pdf
Installation Zimbra.pdfInstallation Zimbra.pdf
Installation Zimbra.pdfssuser64f0591
 
Mise en place de la telephonie ip avec Asterisk
Mise en place de la telephonie ip avec AsteriskMise en place de la telephonie ip avec Asterisk
Mise en place de la telephonie ip avec AsteriskPape Moussa SONKO
 
Securisation de la VoIP sous Asterisk: solution avec Asterisk, OpenVPN et Ope...
Securisation de la VoIP sous Asterisk: solution avec Asterisk, OpenVPN et Ope...Securisation de la VoIP sous Asterisk: solution avec Asterisk, OpenVPN et Ope...
Securisation de la VoIP sous Asterisk: solution avec Asterisk, OpenVPN et Ope...Stephen Salama
 
IoT Toulouse : introduction à mqtt
IoT Toulouse : introduction à mqttIoT Toulouse : introduction à mqtt
IoT Toulouse : introduction à mqttJulien Vermillard
 
eServices-Tp1: Web Services
eServices-Tp1: Web ServiceseServices-Tp1: Web Services
eServices-Tp1: Web ServicesLilia Sfaxi
 
Message Oriented Middleware (MOM)
Message Oriented Middleware (MOM)Message Oriented Middleware (MOM)
Message Oriented Middleware (MOM)drewenut
 
Equipements d'interconnexion
Equipements d'interconnexionEquipements d'interconnexion
Equipements d'interconnexionInes Kechiche
 
IoT (M2M) - Big Data - Analyses : Simulation et Démonstration
IoT (M2M) - Big Data - Analyses : Simulation et DémonstrationIoT (M2M) - Big Data - Analyses : Simulation et Démonstration
IoT (M2M) - Big Data - Analyses : Simulation et DémonstrationCHAKER ALLAOUI
 
Mpls foudhaili oussama
Mpls foudhaili oussamaMpls foudhaili oussama
Mpls foudhaili oussamaGilles Samba
 
ETUDE ET MISE EN PLACE DE LA SOLUTION VOIP OVER LTE, DIMENSIONNEMENT ET MESUR...
ETUDE ET MISE EN PLACE DE LA SOLUTION VOIP OVER LTE, DIMENSIONNEMENT ET MESUR...ETUDE ET MISE EN PLACE DE LA SOLUTION VOIP OVER LTE, DIMENSIONNEMENT ET MESUR...
ETUDE ET MISE EN PLACE DE LA SOLUTION VOIP OVER LTE, DIMENSIONNEMENT ET MESUR...Sidali Bhs
 

Tendances (20)

1 - Généralités - Réseaux Informatiques.pdf
1 - Généralités - Réseaux Informatiques.pdf1 - Généralités - Réseaux Informatiques.pdf
1 - Généralités - Réseaux Informatiques.pdf
 
Etude et mise en place d’un VPN
Etude et mise en place d’un VPNEtude et mise en place d’un VPN
Etude et mise en place d’un VPN
 
Expl couches osi
Expl couches osiExpl couches osi
Expl couches osi
 
Alphorm.com Formation Certification NSE4 - Fortinet Fortigate Infrastructure 6.x
Alphorm.com Formation Certification NSE4 - Fortinet Fortigate Infrastructure 6.xAlphorm.com Formation Certification NSE4 - Fortinet Fortigate Infrastructure 6.x
Alphorm.com Formation Certification NSE4 - Fortinet Fortigate Infrastructure 6.x
 
Chapitre 2 - Réseaux locaux
Chapitre 2 - Réseaux locauxChapitre 2 - Réseaux locaux
Chapitre 2 - Réseaux locaux
 
Methodes d'accès dans les réseaux locaux
Methodes d'accès dans les réseaux locauxMethodes d'accès dans les réseaux locaux
Methodes d'accès dans les réseaux locaux
 
Installation Zimbra.pdf
Installation Zimbra.pdfInstallation Zimbra.pdf
Installation Zimbra.pdf
 
Mise en place de la telephonie ip avec Asterisk
Mise en place de la telephonie ip avec AsteriskMise en place de la telephonie ip avec Asterisk
Mise en place de la telephonie ip avec Asterisk
 
Securisation de la VoIP sous Asterisk: solution avec Asterisk, OpenVPN et Ope...
Securisation de la VoIP sous Asterisk: solution avec Asterisk, OpenVPN et Ope...Securisation de la VoIP sous Asterisk: solution avec Asterisk, OpenVPN et Ope...
Securisation de la VoIP sous Asterisk: solution avec Asterisk, OpenVPN et Ope...
 
Les Vpn
Les VpnLes Vpn
Les Vpn
 
présentation sur le vpn
présentation sur le vpn présentation sur le vpn
présentation sur le vpn
 
IoT Toulouse : introduction à mqtt
IoT Toulouse : introduction à mqttIoT Toulouse : introduction à mqtt
IoT Toulouse : introduction à mqtt
 
eServices-Tp1: Web Services
eServices-Tp1: Web ServiceseServices-Tp1: Web Services
eServices-Tp1: Web Services
 
Message Oriented Middleware (MOM)
Message Oriented Middleware (MOM)Message Oriented Middleware (MOM)
Message Oriented Middleware (MOM)
 
Equipements d'interconnexion
Equipements d'interconnexionEquipements d'interconnexion
Equipements d'interconnexion
 
IoT (M2M) - Big Data - Analyses : Simulation et Démonstration
IoT (M2M) - Big Data - Analyses : Simulation et DémonstrationIoT (M2M) - Big Data - Analyses : Simulation et Démonstration
IoT (M2M) - Big Data - Analyses : Simulation et Démonstration
 
Mpls foudhaili oussama
Mpls foudhaili oussamaMpls foudhaili oussama
Mpls foudhaili oussama
 
Sécurité des Applications Web avec Json Web Token (JWT)
Sécurité des Applications Web avec Json Web Token (JWT)Sécurité des Applications Web avec Json Web Token (JWT)
Sécurité des Applications Web avec Json Web Token (JWT)
 
rapportfinal
rapportfinalrapportfinal
rapportfinal
 
ETUDE ET MISE EN PLACE DE LA SOLUTION VOIP OVER LTE, DIMENSIONNEMENT ET MESUR...
ETUDE ET MISE EN PLACE DE LA SOLUTION VOIP OVER LTE, DIMENSIONNEMENT ET MESUR...ETUDE ET MISE EN PLACE DE LA SOLUTION VOIP OVER LTE, DIMENSIONNEMENT ET MESUR...
ETUDE ET MISE EN PLACE DE LA SOLUTION VOIP OVER LTE, DIMENSIONNEMENT ET MESUR...
 

Similaire à Rabbitmq

What's Next Replay - AMQP
What's Next Replay - AMQPWhat's Next Replay - AMQP
What's Next Replay - AMQPZenikaOuest
 
ITN_Module_3.pptx
ITN_Module_3.pptxITN_Module_3.pptx
ITN_Module_3.pptxserieux1
 
monssef .. rtu et osi et application.pptx
monssef .. rtu et osi et application.pptxmonssef .. rtu et osi et application.pptx
monssef .. rtu et osi et application.pptxAYOUBLOUIZI
 
VoIP-kobbane2018_1_.pdf
VoIP-kobbane2018_1_.pdfVoIP-kobbane2018_1_.pdf
VoIP-kobbane2018_1_.pdfAlKir1
 
Wm674 g formation-ibm-websphere-message-broker-v8-developpement-d-application...
Wm674 g formation-ibm-websphere-message-broker-v8-developpement-d-application...Wm674 g formation-ibm-websphere-message-broker-v8-developpement-d-application...
Wm674 g formation-ibm-websphere-message-broker-v8-developpement-d-application...CERTyou Formation
 
Cours 2 les architectures reparties
Cours 2 les architectures repartiesCours 2 les architectures reparties
Cours 2 les architectures repartiesMariem ZAOUALI
 
[FR] Websocket Documentary Reasearches
[FR] Websocket Documentary Reasearches[FR] Websocket Documentary Reasearches
[FR] Websocket Documentary ReasearchesManavai Teikituhaahaa
 
Internet et ses services
Internet et ses servicesInternet et ses services
Internet et ses servicesAbdoulaye Dieng
 
Supervision réseaux métro ethernet et cloudification
Supervision réseaux métro ethernet et cloudificationSupervision réseaux métro ethernet et cloudification
Supervision réseaux métro ethernet et cloudificationsahar dridi
 
AMQP: interopérabilité et découplage de systèmes hétérogènes avec RabbitMQ
AMQP: interopérabilité et découplage de systèmes hétérogènes avec RabbitMQAMQP: interopérabilité et découplage de systèmes hétérogènes avec RabbitMQ
AMQP: interopérabilité et découplage de systèmes hétérogènes avec RabbitMQMicrosoft
 
416769859360_chap2fondementdesreseaux2023.pdf
416769859360_chap2fondementdesreseaux2023.pdf416769859360_chap2fondementdesreseaux2023.pdf
416769859360_chap2fondementdesreseaux2023.pdfRihabBENLAMINE
 
Wm664 g formation-ibm-websphere-message-broker-v8-developpement-d-application...
Wm664 g formation-ibm-websphere-message-broker-v8-developpement-d-application...Wm664 g formation-ibm-websphere-message-broker-v8-developpement-d-application...
Wm664 g formation-ibm-websphere-message-broker-v8-developpement-d-application...CERTyou Formation
 

Similaire à Rabbitmq (20)

RabbitMQ.pptx
RabbitMQ.pptxRabbitMQ.pptx
RabbitMQ.pptx
 
What's Next Replay - AMQP
What's Next Replay - AMQPWhat's Next Replay - AMQP
What's Next Replay - AMQP
 
ITN_Module_3.pptx
ITN_Module_3.pptxITN_Module_3.pptx
ITN_Module_3.pptx
 
Chap5 wan
Chap5 wanChap5 wan
Chap5 wan
 
vpn
vpnvpn
vpn
 
monssef .. rtu et osi et application.pptx
monssef .. rtu et osi et application.pptxmonssef .. rtu et osi et application.pptx
monssef .. rtu et osi et application.pptx
 
VoIP-kobbane2018_1_.pdf
VoIP-kobbane2018_1_.pdfVoIP-kobbane2018_1_.pdf
VoIP-kobbane2018_1_.pdf
 
Wm674 g formation-ibm-websphere-message-broker-v8-developpement-d-application...
Wm674 g formation-ibm-websphere-message-broker-v8-developpement-d-application...Wm674 g formation-ibm-websphere-message-broker-v8-developpement-d-application...
Wm674 g formation-ibm-websphere-message-broker-v8-developpement-d-application...
 
Cours 2 les architectures reparties
Cours 2 les architectures repartiesCours 2 les architectures reparties
Cours 2 les architectures reparties
 
[FR] Websocket Documentary Reasearches
[FR] Websocket Documentary Reasearches[FR] Websocket Documentary Reasearches
[FR] Websocket Documentary Reasearches
 
Internet et ses services
Internet et ses servicesInternet et ses services
Internet et ses services
 
Initiation à l'intégration avec biztalk server
Initiation à l'intégration avec biztalk serverInitiation à l'intégration avec biztalk server
Initiation à l'intégration avec biztalk server
 
Supervision réseaux métro ethernet et cloudification
Supervision réseaux métro ethernet et cloudificationSupervision réseaux métro ethernet et cloudification
Supervision réseaux métro ethernet et cloudification
 
Projet MQTT
Projet MQTTProjet MQTT
Projet MQTT
 
AMQP: interopérabilité et découplage de systèmes hétérogènes avec RabbitMQ
AMQP: interopérabilité et découplage de systèmes hétérogènes avec RabbitMQAMQP: interopérabilité et découplage de systèmes hétérogènes avec RabbitMQ
AMQP: interopérabilité et découplage de systèmes hétérogènes avec RabbitMQ
 
Soap
SoapSoap
Soap
 
Adaptative streaming : enjeux, panorama, principes et difficultés
Adaptative streaming : enjeux, panorama, principes et difficultésAdaptative streaming : enjeux, panorama, principes et difficultés
Adaptative streaming : enjeux, panorama, principes et difficultés
 
416769859360_chap2fondementdesreseaux2023.pdf
416769859360_chap2fondementdesreseaux2023.pdf416769859360_chap2fondementdesreseaux2023.pdf
416769859360_chap2fondementdesreseaux2023.pdf
 
Wm664 g formation-ibm-websphere-message-broker-v8-developpement-d-application...
Wm664 g formation-ibm-websphere-message-broker-v8-developpement-d-application...Wm664 g formation-ibm-websphere-message-broker-v8-developpement-d-application...
Wm664 g formation-ibm-websphere-message-broker-v8-developpement-d-application...
 
Réseau lora
Réseau loraRéseau lora
Réseau lora
 

Rabbitmq

  • 2. Plan • Principe de la messagerie entre application • Présentation : • Le protocol AMQP 1.0 • Pourquoi un système de messagerie ? • C’est quoi RabbitMQ ?
  • 3. Présentation • La messagerie fournit un mécanisme pour l'intégration de systèmes faiblement couplés • L'unité centrale de traitement dans un message est un message qui contient généralement un corps et un entête
  • 4. Cas d’utilisation • Les cas d’utilisation : • Agrégation des fichier de journalisation LOG entre les systèmes ; • La propagation d’évènements dans un système ; • Affectation de taches aux nœud au sein d’un système distribué.
  • 5. AMQP • AMQP est un protocole binaire qui vise à standardiser la communication middleware • Advanced Message Queuing Protocol : • Conçu en 2006 par JP Morgan. • Standardisé : Norme internationale ISO / IEC 19464: 2014 • Sécurisé, Flexible, fiable, binaire, Multiplexé • interopérable
  • 6. AMQP • Barclays Bank PLC • Cisco Systems, Inc. • Credit Suisse • Deutsche Börse Systems • Envoy Technologies Inc. • Goldman Sachs • iMatix Corporation • IONA Technologies • JPMorgan Chase Bank & Co. • Microsoft Corporation • Novell • Rabbit Technologies, a joint venture of CohesiveFT and LShift • Red Hat, Inc. • Solace Systems, Inc. • Tervela, Inc. • TWIST Process Innovations • WSO2, Inc. • 29West Inc.
  • 7. AMQP • Le protocole AMQP définit : • Exchanges : est le broker endpoints qui se charge de la reception du message et le route vers la queue appropriée. • Queues : stockent les messages destinés à un subscriber en attente qu’ils soient récupérés • Bindings : règles qui lient les exchanges et les queues.
  • 9. Solutions existantes • Les solutions de messagerie implémentent différents protocoles de transfert de messages tels que AMQP, XMPP, MQTT et bien d'autres • La variété des protocoles implique un verrouillage du fournisseur lors de l'utilisation d'une solution de messagerie particulière appelé un courtier de messagerie) « Broker »
  • 11. RabbitMQ • RabbitMQ est une implémentation du protocole AMQP • Il est opensource • Il est écrit en langage Erlang • Il dispose d’une architecture « pluggable » et fournit une extension pour d'autres protocoles tels que HTTP, STOMP et MQTT
  • 13. RabbitMQ • Chaque message est publié avec une routing key • Toute liaison faite entre un exchange et une queue a un binding key • Le routage des messages est déterminé en fonction de la correspondance entre les routing keys et les binding keys
  • 14. Models de messagerie dans RabbitMQ • Plusieurs modèles de messagerie sont mis en œuvre par les différents types d’exchanges que fournit rabbitMQ : default direct fanout topic headers
  • 15. Models de messagerie dans RabbitMQ / default AMQP Default Chat Log general error warning Publisher Publisher Subscriber Subscriber Subscriber Exchange=‘’ Key=‘general’ Payload=‘ABC’
  • 16. Models de messagerie dans RabbitMQ / direct AMQP Default Chat Log general error warning Publisher Publisher Subscriber Subscriber Subscriber Exchange=‘chat’ Key=‘b_general’ Payload=‘ABC’ b_general
  • 17. Models de messagerie dans RabbitMQ / fanout AMQP Default Chat Log general error warning Publisher Publisher Subscriber Subscriber Subscriber Exchange=‘log’ Key=‘’ Payload=‘ABC’
  • 18. Models de messagerie dans RabbitMQ / topic AMQP Default Chat Log general error Warning.serv Publisher Publisher Subscriber Subscriber Subscriber Exchange=‘log’ Key=‘warning.#’ Payload=‘ABC’ Warning.cli
  • 19. Models de messagerie dans RabbitMQ / headers • Un échange « headers » route les messages en fonction d'un message personnalisé placé dans le header du message envoyé
  • 20. RabbitMQ / Sécurité • RabbitMQ utilise SASL pour l'authentification • RabbitMQ utilise des listes de contrôle d'accès (ACL) pour l'autorisation • SSL / TLS peut être activée pour securiser les canaux de communication AMQP.
  • 21. Conclusion • RabbitMQ est une solution de messagerie robuste qui peut être utilisée dans divers scénarios en fonction des besoins de votre application.

Notes de l'éditeur

  1. Un échange par défaut a la chaîne vide comme nom et achemine les messages vers une file d'attente si la clé de routage du message correspond au nom de la file d'attente (aucune liaison ne doit être déclarée entre un échange par défaut et une file d'attente) • Les échanges par défaut conviennent à un point à point la communication entre les points d'extrémité
  2. Un échange direct achemine les messages vers une file d'attente si la clé de routage du message correspond à la clé de liaison entre l'échange direct et la file d'attente Les échanges directs sont adaptés à la communication point à point entre les points d'extrémité
  3. Un fanout échange des messages (broadcasts) vers toutes les files d'attente qui lui sont liées (la clé de liaison n'est pas utilisée) Les échanges de fanout sont adaptés pour publier des communications entre des points de terminaison
  4. Un sujet échange des messages (multidiffusions) vers toutes les files d'attente qui ont une clé de liaison (peut être un motif) qui correspond à la clé de routage du message
  5. • Les échanges d'en-tête conviennent au routage des messages vers différentes files d'attente en fonction de plusieurs attributs
  6. • Les échanges d'en-tête conviennent au routage des messages vers différentes files d'attente en fonction de plusieurs attributs
  7. • Les échanges d'en-tête conviennent au routage des messages vers différentes files d'attente en fonction de plusieurs attributs