2017-04-15 5 views
1

私はaxonframeworkを使用してイベントベースのprorammingを探索し始めました。私は、イベントを起こしたり処理したりするためのサポートがあることを知っています。axonframeworkを使用して複数のインスタンス間でイベントを発生させて処理する

私は、httpを使用して異なるインスタンス/ jvmで複数のサービスがそれぞれ通信するシナリオを持っています。

ここで、サービス通信にイベントを使用したいと考えています。ネットワーク上でイベントをどのように受け渡し、異なるjvm/hostで動作するサービスでそれらを処理させるかはわかりません。

axonframeworkはこれをサポートしていますか、またはこれをメッセージングミドルウェアと直接統合する必要がありますか。

答えて

2

Axonはこれをサポートしていますが、依然としてメッセージミドルウェアが必要な場合もあります。 AxonはメッセージングそのものよりもAPIに重点を置いています。

イベントストアを使用する場合は、公開したイベントを保存し、そのノードから別のノードを(自分のペースで)読み込むことができます。 Axonは、JPA/JDBCとMongoDBに基づくイベントストアをサポートしています。

イベントを保存したくない場合は、代わりにメッセージブローカーを使用できます。 AxonはAMQPを介してAMQPメッセージブローカーをサポートしています。 Axonはあなたのためにメッセージのシリアライズ/デシリアライズを行います。

この場合のAxonのメリットは、メッセージングの実装をビジネスロジックから抽象化することです。ビジネスロジックはイベントバスにイベントを発行し、Axonはそれをコンフィグレーションされたブローカにパブリッシュします。

+0

お返事ありがとうございます。イベントバスがイベントのマッピングをプロデューサとcomsumer側のトピックにどのように抽象化しているかについて、サンプルまたはドキュメントを教えてください。 – user6594900

+0

リファレンスガイドをご覧ください:https://docs.axonframework.org/part3/event-processing.html#distributing-events – Allard

関連する問題