2017-04-15 3 views
1

Je viens de commencer à explorer le proramming basé sur les événements avec axonframework. Je vois qu'il y a un soutien pour l'organisation et la gestion des événements.Raising and Handling événements à travers plusieurs instances utilisant axonframework

J'ai un scénario où plusieurs services communiquent avec chacun dans une instance/jvm différente en utilisant http. Je souhaite maintenant utiliser les événements pour la communication de service. Je ne suis pas sûr comment nous pouvons passer des événements à travers le réseau et les faire manipuler par des services fonctionnant dans différents jvm/host.

Est-ce que axonframework fournit un support pour cela ou dois-je m'intégrer directement avec le middleware de messagerie pour cela?

Répondre

2

Axon fournit un support pour cela, bien que dans certains cas, vous auriez toujours besoin d'un middleware de messagerie. Axon se concentre sur les API, plus que sur la messagerie elle-même.

Si vous utilisez un magasin d'événements, vous pouvez stocker les événements que vous publiez et lire différents nœuds dans ce magasin (à leur propre rythme). Axon prend en charge les magasins d'événements basés sur JPA/JDBC et MongoDB.

Si vous ne voulez pas/devez stocker vos événements, vous pouvez utiliser un courtier de messages à la place. Axon prend en charge les courtiers de messages AMQP via Spring AMQP. Axon fera la sérialisation/désérialisation des messages pour vous.

L'avantage d'Axon dans ce cas est qu'il permet d'abstraire l'implémentation de la messagerie de la logique métier. La logique métier publie simplement un événement dans le bus d'événements, après quoi Axon le publie auprès du courtier configuré.

+0

Merci pour votre réponse. Pouvez-vous me diriger vers un échantillon ou vers les docs sur la manière dont le bus d'événement résume le mappage des événements aux sujets du côté des producteurs et des consommateurs. – user6594900

+0

Consultez le guide de référence: https://docs.axonframework.org/part3/event-processing.html#distributing-events – Allard