Caractéristiques Message Queue MQ, les scénarios de sélection et d'application

Tout d'abord, quelle est la file d'attente de messages

Message Queue (Message Queue, dénommé MQ), un moyen de conteneur pour des messages de maintien, essentiellement une file d'attente.

Message (message) fait référence au transfert de données entre les applications, un message peut être très simple, par exemple, ne contient que la chaîne de texte, peut être plus complexe, et peut contenir des objets incorporés.

Message Queue (Message Queue) est une communication entre une application, la transmission de message peut revenir immédiatement, avec un système pour assurer que les informations de message fiable, le message que les éditeurs publient des messages à la MQ quel que soit qui prennent, en utilisant le message qui prennent simplement des messages de la MQ celui qui a affiché, donc les éditeurs et les utilisateurs ne connaissent pas les uns les autres.

  • Producteur: producteur de message, responsable de la production et l'envoi d'un message au courtier;
  • Courtier: Centre de traitement du message. Responsable pour le stockage des messages, accusé de réception, relances, etc., qui comprennent généralement plusieurs files d'attente;
  • Consommateurs: les consommateurs de nouvelles, est responsable de la récupération des messages du courtier, et traité en conséquence;

composants MQ sont maintenant couramment utilisés ActiveMQ, RabbitMQ, RocketMQ, ZeroMQ, bien sûr, au cours des dernières années, Kafka chaud, dans certains scénarios, le MQ est, bien sûr, kafka plus puissant.

Bien que différents MQ a ses propres caractéristiques et avantages, mais, peu importe quel genre de MQ, MQ a quelques-uns lui-même dispose vient, ici, nous allons parler des caractéristiques de file d'attente de messages, les avantages, la sélection et les scénarios d'application.

En second lieu, pourquoi besoin de la file d'attente de messages

Dans un environnement réparti hautement concurrent, étant donné qu'aucun processus de synchronisation d'horloge en utilisant une file d'attente de messages, le traitement asynchrone des demandes, pour relâcher la pression du système.

Par exemple, un système de commande: un utilisateur clique sur une commande déclenche les processus suivants de logique métier:

  • déductions stock
  • Générer l'ordre approprié
  • Envoyer une notification par SMS, etc.

Au début du développement de ces logique métier peut être mis en place pour effectuer la synchronisation, que les ordres d'affaires ont augmenté, la nécessité d'améliorer la performance des services du système, ce temps peut être divisé en effet certaines opérations ne nécessitent pas la mise en uvre immédiate de manière asynchrone, telles que la notification de la messagerie texte, ce scénario peut utiliser un message file d'attente MQ.

En substance, est résolu par la pression synchrone système asynchrone, nous faisons la conception de l'architecture quand il y a un principe: essayez de ne pas être en mesure de synchroniser asynchrone.

Troisièmement, l'avantage d'une file d'attente de messages

1, blindage détails hétérogènes plate-forme: l'expéditeur, le système de réception entre les deux parties ont besoin de savoir, sachez simplement le message.

2, Asynchronous: message de capacité d'empilage; récepteur émetteur sans transmission simultanée, simultanée sans expansion de la partie destinataire (clipping).

3. Découplage: Prévenir l'introduction de l'API pose trop de risque pour la stabilité du système, appelant une mauvaise utilisation du système exercera une pression sur le callee, le traitement inadéquat callee réduira la capacité de répondre au système de l'appelant.

4, la réutilisation: une fois envoyé plusieurs fois la consommation.

5, fiable: une garantie de livraison des messages. Si le destinataire est disponible pour envoyer un message, le message de file d'attente de message restera jusqu'à ce qu'il soit transmis avec succès.

6, assure le routage: la nécessité de l'expéditeur d'établir une connexion avec le destinataire, à la fois par la file d'attente de messages pour vous assurer que les messages peuvent être acheminés de l'expéditeur au destinataire, même pour les deux réseaux aurait été difficile au service interfonctionnement, les informations de routage peut également être fournie.

Quatrièmement, les caractéristiques de la file d'attente de messages

1. asynchronisme

La synchronisation de temps, par l'envoi d'un message d'une manière, effectué le traitement asynchrone. La réduction de la synchronisation du temps d'attente.

2. Couplé Librement

file d'attente de messages réduit couplage entre les services, les différents services peut communiquer par la file d'attente de messages, sans se soucier des autres détails de mise en uvre, tant que la ligne de bonne définition de format de nouvelles.

3. Distribué

Via la consommation à grande échelle, réduit le risque de blocage file d'attente de messages, et la possibilité de point de défaillance unique (file d'attente un message lui-même peut de groupe distribué bien entendu être fait aussi) des consommateurs individuels.

4. Fiabilité

Message Queuing reçu un message sera généralement stocké sur un disque dur local (lorsque le message a été traité, les informations stockées pour atteindre en fonction de la file d'attente de messages, il est possible de le supprimer), de sorte que même si la file d'attente de messages d'application ou blocage blocage lui-même, les messages peuvent également être rechargés.

V. La sélection de file d'attente de messages

1.ActiveMQ

Apache produit, la première utilisation de produits de mise en attente de messages, de temps, et la version récemment mise à jour lente.

2.RabbitMQ

RabbitMQ est le développement du langage Erlang, combiné avec les avantages du langage concurrency Erlang lui-même, il supporte de nombreux protocoles: AMQP, XMPP, SMTP, STOMP, il est vrai aussi, il devient très lourd, est plus approprié pour le développement des entreprises de classe. Une meilleure performance, mais pas propice à faire du développement secondaire et l'entretien.

3.RocketMQ

Ali middleware de messagerie open source, le développement Java pur, avec un débit élevé, une haute disponibilité, adapté pour les systèmes distribués à grande échelle caractéristiques d'application.

4.ZeroMQ

Connu comme le plus rapide des systèmes de mise en attente de messages, en particulier la demande de scénarios à haut débit.

développement évolutif, flexible en utilisant le langage C, est vraiment juste reconditionné une bibliothèque de prise, si elle est utilisée comme une file d'attente de messages, la nécessité de développer beaucoup de code.

5.Kafka

Kafka est un sous-projet de l'Apache, est une interlangage haute performance distribuée publication / abonnement des systèmes de mise en attente de messages et Jafka est éclosent Kafka vient, qui est une version améliorée de Kafka.

6. Une comparaison détaillée de la file d'attente de messages

7. Le résumé de la file d'attente de messages

besoins de la file d'attente des messages de sélection soient basés sur les besoins spécifiques de l'application, ZeroMQ petite mais belle, RabbitMQ grande et stable, et Kakfa RocketMQ rapide et forte.

En quatrième lieu, le scénario d'application de la file d'attente de messages

1. traitement asynchrone

Les principales caractéristiques de la file d'attente de messages est un processus asynchrone, le but principal est de réduire le temps de réponse de la requête, les processus asynchrones pour réaliser la non-noyau, et d'améliorer les performances du système en réponse.

Par conséquent, le scénario d'utilisation typique est de temps et ne nécessite pas le temps réel (synchrone) renvoie le résultat de l'opération, comme un message dans la file d'attente de messages.

2. Application de Découplage

Après avoir utilisé la file d'attente de messages, tant que le même format de message, l'expéditeur et le destinataire du message n'a pas besoin de communiquer entre eux, pas besoin de l'autre influence, à savoir le découplage.

Chaque membre des autres membres n'ont pas à subir l'impact peut être plus indépendant et le contact que par le message file d'attente MQ.

A titre d'exemple: le processus de commande de l'utilisateur, les commandes se produiront boucle Stock Cette opération, l'ordre du système en amont et des systèmes en aval boucle stock, peuvent être contactés par la file d'attente de message figure MQ, l'inventaire boucle de manière asynchrone, de manière à atteindre le système de commande avec application du système d'inventaire de découplage.

3. flux avant de coupe

Le front d'écoulement est coupé dans la file d'attente de messages scénarios communs, des groupes généralement utilisés dans une activité de pointe ou pic largement.

Scénario: activité pic, le plus souvent à cause du trafic trop, ce qui conduit à une onde de trafic, blocage de l'application. Pour résoudre ce problème, le besoin général d'ajouter la file d'attente de messages dans les applications frontaux.

4. Traitement du journal

Connectez-vous des moyens de traitement dans la file d'attente de messages avec le traitement du journal, telles que les applications Kafka, un certain nombre de problèmes pour résoudre le transfert de journal.

5. Nouvelles Communication

Les files de messages sont généralement construits mécanisme de communication efficace, et peuvent donc être utilisés pour la communication simple message, comme un point à la file d'attente de messages dans le chat, ou similaire.

Au-dessus, la file d'attente de message est une DISTRIBUÉ détaillée.

Vous et moi sommes au courant des 10 catégories de la clause d'exemption d'assurance automobile, alors exclamé lorsque vous cherchez perdu « dupé! »
Précédent
Les machines intelligentes pour imiter la pensée chinoise? Google devrait publier un téléphone appareil photo bon marché
Prochain
En cinq ans, Nokia est devenu la première marque de téléphone intelligent du monde
Double Tap est vraiment! Les joueurs d'Arsenal Quatre avaient été impliqués dans un scandale sexuel
Semez les graines de la civilisation ont grandi en dehors du Sud location légale Second Sun Aijun procureur général a servi comme vice-président de Legal
retour secret, les arts martiaux! Juye ces gens pratiquaient célèbre Yi Jin Jing!
Shenzhen Nanshan District, Shenzhen formation professionnelle des écoles de formation professionnelle organisées par la vingtième célébration anniversaire
réseau 2G mais aussi pour combien de temps?
Samsung est toujours le prix de la mémoire dominante barreur
Le rêve haut de gamme de MediaTek, les fabricants tirer souvent sur le « autel »
Quand l'homme qui a ensuite mis en? Toshiba difficile de survivre
Mangez chaud tofu, billets précipitez Fête du Printemps méfiez-vous!
Il a pris sa retraite après le retour au Super passé six ans, mais il est devenu célèbre à cause d'un combat
HTC s'engager dans un nouveau roi, ré-entrée sur le marché chinois