2016-10-18 3 views
1

Cette question peut sembler bizarre et est certainement due à un manque de connaissances. Je n'ai pas trouvé de ressources sur le sujet de la façon dont il est structuré par programme. Je comprends que l'éditeur publie des messages sur le sujet et les abonnés consomment des messages du sujet. Mais ce que je ne comprends pas, c'est comment est structuré par programme. Par exemple, dans le modèle point à point, vous avez une file d'attente de messages qui peut être considérée comme une structure de données linéaire suivant la FIFO. Bien qu'il ne soit pas nécessaire de suivre FIFO mais très bien pourrait. Cela me permet de mettre l'accent sur la manière dont la file d'attente est structurée par programme. Comment le sujet est-il structuré à cet égard?Publier/Souscrire Modèle, quelle est la structure du sujet?

Répondre

1

Le sujet est généralement implémenté comme une structure arborescente avec '/' étant la racine de l'arbre et les enfants à différents niveaux.

L'image suivante montre comment un arbre de sujet peut être organisé. L'arborescence des sujets a deux nœuds enfants, un pour SPORT et un autre pour NEWS, chacun ayant des enfants plus loin. enter image description here Cette façon d'organiser l'arborescence des rubriques permet de créer des abonnements à plusieurs niveaux. Par exemple, un abonné qui ne s'intéresse qu'à son club de football préféré, LIVERPOOL s'abonnera avec une chaîne de sujet comme /SPORT/FOOTBALL/LIVERPOOL. Cet abonné recevra uniquement les publications publiées avec le sujet /SPORT/FOOTBALL/LIVERPOOL. Pour quelqu'un d'autre intéressé par les nouvelles du monde, s'abonner avec le sujet /NEWS/WORLD. Pour quelqu'un qui est intéressé tout simplement s'abonner à / comme sujet.

Lorsqu'un abonnement est créé pour un sujet, le fournisseur JMS crée un élément connu sous le nom Subscription Queue. Le fournisseur JMS place les publications dans cette file d'attente. L'abonné reçoit alors les publications de cette file d'attente.